2021-08-27 15:03:47 +00:00
|
|
|
#nullable enable
|
2020-06-12 21:13:21 +00:00
|
|
|
|
|
|
|
using NodaTime;
|
|
|
|
|
2021-11-27 02:10:56 +00:00
|
|
|
namespace PluralKit.Core;
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Model for the `message_context` PL/pgSQL function in `functions.sql`
|
|
|
|
/// </summary>
|
|
|
|
public class MessageContext
|
2020-06-12 21:13:21 +00:00
|
|
|
{
|
2021-11-27 02:10:56 +00:00
|
|
|
public SystemId? SystemId { get; }
|
2022-03-24 01:32:18 +00:00
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Whether a system is being deleted (no actions should be taken, or commands ran)
|
|
|
|
/// </summary>
|
2021-11-27 02:10:56 +00:00
|
|
|
public ulong? LogChannel { get; }
|
|
|
|
public bool InBlacklist { get; }
|
|
|
|
public bool InLogBlacklist { get; }
|
|
|
|
public bool LogCleanupEnabled { get; }
|
|
|
|
public bool ProxyEnabled { get; }
|
|
|
|
public SwitchId? LastSwitch { get; }
|
|
|
|
public MemberId[] LastSwitchMembers { get; } = new MemberId[0];
|
|
|
|
public Instant? LastSwitchTimestamp { get; }
|
|
|
|
public string? SystemTag { get; }
|
|
|
|
public string? SystemGuildTag { get; }
|
|
|
|
public bool TagEnabled { get; }
|
|
|
|
public string? SystemAvatar { get; }
|
|
|
|
public bool AllowAutoproxy { get; }
|
|
|
|
public int? LatchTimeout { get; }
|
2022-11-23 08:48:24 +00:00
|
|
|
public bool CaseSensitiveProxyTags { get; }
|
2020-06-12 21:13:21 +00:00
|
|
|
}
|