# `Sidereon.Coverage`
[🔗](https://github.com/neilberkman/sidereon-ex/blob/main/lib/sidereon/coverage.ex#L1)

Batch single-epoch coverage helpers backed by the Rust core.

# `datetime`

```elixir
@type datetime() ::
  DateTime.t()
  | NaiveDateTime.t()
  | {{integer(), integer(), integer()}, {integer(), integer(), integer()}}
  | {{integer(), integer(), integer()},
     {integer(), integer(), integer(), integer()}}
```

# `look_cell`

```elixir
@type look_cell() :: {:ok, {float(), float(), float()}} | :error
```

# `station`

```elixir
@type station() ::
  {number(), number(), number()}
  | %{latitude: number(), longitude: number(), altitude_m: number()}
```

# `look_angles`

```elixir
@spec look_angles([Sidereon.Elements.t()], [station()], datetime()) :: [[look_cell()]]
```

Compute `{azimuth_deg, elevation_deg, range_km}` for every satellite/station pair.

---

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