using System;
using MongoDB.Bson;
using MongoDB.Bson.Serialization.Attributes;

namespace StellaOps.Authority.Storage.Mongo.Documents;

[BsonIgnoreExtraElements]
public sealed class AuthorityRevocationExportStateDocument
{
    [BsonId]
    public string Id { get; set; } = "state";

    [BsonElement("sequence")]
    public long Sequence { get; set; }

    [BsonElement("lastBundleId")]
    [BsonIgnoreIfNull]
    public string? LastBundleId { get; set; }

    [BsonElement("lastIssuedAt")]
    [BsonIgnoreIfNull]
    public DateTimeOffset? LastIssuedAt { get; set; }
}
