namespace LumaTunnel.Server.Core.Security; public sealed record DeviceRecord { public required string DeviceId { get; init; } public required string DeviceName { get; init; } public required string TokenHash { get; init; } public string ClientVersion { get; init; } = "unknown"; public bool Enabled { get; init; } = true; public DateTimeOffset CreatedAtUtc { get; init; } = DateTimeOffset.UtcNow; public DateTimeOffset? LastSeenAtUtc { get; init; } public long UploadBytes { get; init; } public long DownloadBytes { get; init; } } public sealed record DeviceDatabase { public List Devices { get; init; } = []; } public sealed record PairingCodeRecord { public required string CodeHash { get; init; } public required DateTimeOffset ExpiresAtUtc { get; init; } public bool Used { get; init; } } public sealed record PairingCodeDatabase { public List Codes { get; init; } = []; }