namespace AIStudio.Settings.DataModel;
public sealed class DataChat
{
///
/// Shortcuts to send the input to the AI.
///
public SendBehavior ShortcutSendBehavior { get; set; } = SendBehavior.ENTER_IS_SENDING;
///
/// Defines the provider behavior for loading a chat.
///
public LoadingChatProviderBehavior LoadingProviderBehavior { get; set; } = LoadingChatProviderBehavior.USE_CHAT_PROVIDER_IF_AVAILABLE;
///
/// Defines the provider behavior when adding a chat.
///
public AddChatProviderBehavior AddChatProviderBehavior { get; set; } = AddChatProviderBehavior.ADDED_CHATS_USE_LATEST_PROVIDER;
///
/// Defines the data source behavior when sending assistant results to a chat.
///
public SendToChatDataSourceBehavior SendToChatDataSourceBehavior { get; set; } = SendToChatDataSourceBehavior.NO_DATA_SOURCES;
///
/// Preselect any chat options?
///
public bool PreselectOptions { get; set; }
///
/// Should we preselect a provider for the chat?
///
public string PreselectedProvider { get; set; } = string.Empty;
///
/// Preselect a profile?
///
public string PreselectedProfile { get; set; } = string.Empty;
///
/// Should we preselect data sources options for a created chat?
///
public DataSourceOptions PreselectedDataSourceOptions { get; set; } = new();
///
/// Should we show the latest message after loading? When false, we show the first (aka oldest) message.
///
public bool ShowLatestMessageAfterLoading { get; set; } = true;
}