# `Sidereon.GNSS.Constellation.NavcenAssessment`
[🔗](https://github.com/neilberkman/sidereon-ex/blob/main/lib/sidereon/gnss/constellation.ex#L180)

A NAVCEN status row evaluated at an explicit UTC instant.

`timing` is `:parsed` for a complete bounded forecast interval,
`:unparseable` when a forecast cannot be resolved without guessing, and
`:not_applicable` for notice types that do not carry a bounded forecast.
Parsed intervals are half-open: the satellite is affected at
`effective_start_utc` and unaffected again at `effective_end_utc`.
Duplicate Outage Start cells are joined with `" | "` and make bounded
forecast timing `:unparseable`.

# `t`

```elixir
@type t() :: %Sidereon.GNSS.Constellation.NavcenAssessment{
  effective_end_utc: DateTime.t() | nil,
  effective_start_utc: DateTime.t() | nil,
  evaluated_at_utc: DateTime.t(),
  outage_start: String.t() | nil,
  status: Sidereon.GNSS.Constellation.NavcenStatus.t(),
  timing: timing()
}
```

# `timing`

```elixir
@type timing() :: :parsed | :unparseable | :not_applicable
```

---

*Consult [api-reference.md](api-reference.md) for complete listing*
