namespace AIStudio.Tools.PluginSystem; /// /// Represents a configuration object whose API key is managed by the user, although the object /// itself is managed by a configuration plugin. Implemented by all provider kinds which support /// the options "AllowUserProvidedAPIKey" and "PromptForUserAPIKey", i.e., LLM, embedding, and /// transcription providers. UserProvidedAPIKeyOptions reads both options from a plugin. /// public interface IUserProvidedAPIKey { /// /// When set by a configuration plugin, the user may set their own API key for this otherwise /// locked, enterprise-managed object. /// public bool AllowUserProvidedAPIKey { get; } /// /// When set by a configuration plugin, AI Studio asks the user for the API key of this object /// on the home page as long as none is stored. Implies AllowUserProvidedAPIKey. /// public bool PromptForUserAPIKey { get; } }