The next catalog issue nominally due, with its exact identity and nominal observed/predicted coverage.
due_at and the half-open coverage interval endpoints are UTC datetimes.
Summary
Types
@type interval() :: %{from: DateTime.t(), until: DateTime.t()}
@type t() :: %Sidereon.GNSS.Data.NominalIssue{ covers: %{observed: interval() | nil, predicted: interval() | nil}, due_at: DateTime.t(), identity: Sidereon.GNSS.Distribution.ProductIdentity.t() }