78 lines
1.9 KiB
C#
78 lines
1.9 KiB
C#
using Maki.Structures.Users;
|
|
using Newtonsoft.Json;
|
|
using System;
|
|
|
|
namespace Maki.Structures.Guilds
|
|
{
|
|
/// <summary>
|
|
/// Discord API Guild Integration structure
|
|
/// </summary>
|
|
internal struct GuildIntegration
|
|
{
|
|
/// <summary>
|
|
/// integration id
|
|
/// </summary>
|
|
[JsonProperty("id")]
|
|
public ulong Id;
|
|
|
|
/// <summary>
|
|
/// integration name
|
|
/// </summary>
|
|
[JsonProperty("name")]
|
|
public string Name;
|
|
|
|
/// <summary>
|
|
/// integration type (twitch, youtube, etc)
|
|
/// </summary>
|
|
[JsonProperty("type")]
|
|
public string Type;
|
|
|
|
/// <summary>
|
|
/// is this integration enabled
|
|
/// </summary>
|
|
[JsonProperty("enabled")]
|
|
public bool IsEnabled;
|
|
|
|
/// <summary>
|
|
/// is this integration syncing
|
|
/// </summary>
|
|
[JsonProperty("syncing")]
|
|
public bool IsSyncing;
|
|
|
|
/// <summary>
|
|
/// id that this integration uses for "subscribers"
|
|
/// </summary>
|
|
[JsonProperty("role_id")]
|
|
public ulong RoleId;
|
|
|
|
/// <summary>
|
|
/// the behavior of expiring subscribers
|
|
/// </summary>
|
|
[JsonProperty("expire_behavior")]
|
|
public int ExpireBehaviour;
|
|
|
|
/// <summary>
|
|
/// the grace period before expiring subscribers
|
|
/// </summary>
|
|
[JsonProperty("expire_grace_period")]
|
|
public int ExpireGracePeriod;
|
|
|
|
/// <summary>
|
|
/// user for this integration
|
|
/// </summary>
|
|
[JsonProperty("user")]
|
|
public User User;
|
|
|
|
/// <summary>
|
|
/// integration account information
|
|
/// </summary>
|
|
[JsonProperty("account")]
|
|
public GuildIntegrationAccount Account;
|
|
|
|
/// <summary>
|
|
/// when this integration was last synced
|
|
/// </summary>
|
|
[JsonProperty("synced_at")]
|
|
public DateTime LastSync;
|
|
}
|
|
}
|