/*---------------------------------------------------------------------------------------------
* Copyright (c) Microsoft Corporation. All rights reserved.
*--------------------------------------------------------------------------------------------*/
using System.ComponentModel;
using System.Text.Json;
using System.Text.Json.Serialization;
namespace GitHub.Copilot;
/// Converts between JSON numeric milliseconds-since-Unix-epoch and .
[EditorBrowsable(EditorBrowsableState.Never)]
public sealed class UnixMillisecondsDateTimeOffsetConverter : JsonConverter
{
///
public override DateTimeOffset Read(ref Utf8JsonReader reader, Type typeToConvert, JsonSerializerOptions options) =>
DateTimeOffset.FromUnixTimeMilliseconds(reader.GetInt64());
///
public override void Write(Utf8JsonWriter writer, DateTimeOffset value, JsonSerializerOptions options) =>
writer.WriteNumberValue(value.ToUnixTimeMilliseconds());
}