namespace AIStudio.Settings;
///
/// The data model for the settings file.
///
public sealed class Data
{
///
/// The version of the settings file. Allows us to upgrade the settings
/// when a new version is available.
///
public Version Version { get; init; } = Version.V1;
///
/// List of configured providers.
///
public List Providers { get; init; } = [];
///
/// The next provider number to use.
///
public uint NextProviderNum { get; set; } = 1;
///
/// Should we save energy? When true, we will update content streamed
/// from the server, i.e., AI, less frequently.
///
public bool IsSavingEnergy { get; set; }
///
/// Shortcuts to send the input to the AI.
///
public SendBehavior ShortcutSendBehavior { get; set; } = SendBehavior.MODIFER_ENTER_IS_SENDING;
///
/// Should we enable spellchecking for all input fields?
///
public bool EnableSpellchecking { get; set; }
///
/// If and when we should look for updates.
///
public UpdateBehavior UpdateBehavior { get; set; } = UpdateBehavior.ONCE_STARTUP;
}