blob: 197fd5d0241e2f68c6b22afa9d68f33eea935876 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
using System.Text.Json.Serialization;
namespace LibMatrix.Homeservers.ImplementationDetails.Synapse.Models.Responses;
public class SynapseAdminRegistrationTokenUpdateRequest {
[JsonPropertyName("uses_allowed")]
public int? UsesAllowed { get; set; }
[JsonPropertyName("expiry_time")]
public long? ExpiryTime { get; set; }
[JsonIgnore]
public DateTime? ExpiresAt {
get => ExpiryTime.HasValue ? DateTimeOffset.FromUnixTimeMilliseconds(ExpiryTime.Value).DateTime : null;
set => ExpiryTime = value.HasValue ? new DateTimeOffset(value.Value).ToUnixTimeMilliseconds() : null;
}
[JsonIgnore]
public TimeSpan? ExpiresAfter {
get => ExpiryTime.HasValue ? DateTimeOffset.FromUnixTimeMilliseconds(ExpiryTime.Value).DateTime - DateTimeOffset.Now : null;
set => ExpiryTime = value.HasValue ? (DateTimeOffset.Now + value.Value).ToUnixTimeMilliseconds() : null;
}
}
public class SynapseAdminRegistrationTokenCreateRequest : SynapseAdminRegistrationTokenUpdateRequest {
[JsonPropertyName("token")]
public string? Token { get; set; }
[JsonPropertyName("length")]
public int? Length { get; set; }
}
|