//-----------------------------------------------------------------------
//
// Copyright (c) aliasvault. All rights reserved.
// Licensed under the AGPLv3 license. See LICENSE.md file in the project root for full license information.
//
//-----------------------------------------------------------------------
namespace AliasVault.Admin.Main.Models;
///
/// Model representing comprehensive server statistics and metrics.
///
public class ServerStatistics
{
///
/// Gets or sets the total number of users registered on the server.
///
public int TotalUsers { get; set; }
///
/// Gets or sets the total number of email aliases created.
///
public int TotalAliases { get; set; }
///
/// Gets or sets the total number of emails stored.
///
public int TotalEmails { get; set; }
///
/// Gets or sets the total number of email attachments.
///
public int TotalEmailAttachments { get; set; }
///
/// Gets or sets the list of top users by storage size.
///
public List TopUsersByStorage { get; set; } = new();
///
/// Gets or sets the list of top users by number of aliases.
///
public List TopUsersByAliases { get; set; } = new();
///
/// Gets or sets the list of top users by number of emails.
///
public List TopUsersByEmails { get; set; } = new();
///
/// Gets or sets the list of top users by number of credentials.
///
public List TopUsersByCredentials { get; set; } = new();
///
/// Gets or sets the list of top IP addresses by user activity.
///
public List TopIpAddresses { get; set; } = new();
}