using System; using System.Collections.Generic; namespace Svrnty.CQRS.Events.ConsumerGroups.Abstractions; /// /// Information about a consumer in a consumer group. /// public record ConsumerInfo { /// /// The consumer ID. /// public required string ConsumerId { get; init; } /// /// The consumer group ID. /// public required string GroupId { get; init; } /// /// The last heartbeat timestamp from this consumer. /// public required DateTimeOffset LastHeartbeat { get; init; } /// /// When the consumer was first registered. /// public required DateTimeOffset RegisteredAt { get; init; } /// /// Optional metadata about the consumer (e.g., hostname, version). /// public IReadOnlyDictionary? Metadata { get; init; } }