# `GeoGenius.Published.Area`
[🔗](https://github.com/agoodway/geo_genius/blob/main/lib/geo_genius/published/area.ex#L1)

One area of a release, as `published_areas` and its release-scoped base
`release_areas` project it.

Read-only. `published_areas` resolves through the publication pointer, so a
row read through it belongs to whichever release its collection publishes
right now. Build queries with `GeoGenius.Published`, or compose directly
against this schema.

There is no primary key: a view has none to declare, and `area_id` is unique
only because at most one release per collection is published at a time.

# `t`

```elixir
@type t() :: %GeoGenius.Published.Area{
  __meta__: term(),
  area_id: Ecto.UUID.t() | nil,
  area_key: String.t() | nil,
  area_type: String.t() | nil,
  attributes: map() | nil,
  authority: String.t() | nil,
  centroid: Geo.Point.t() | nil,
  collection_key: String.t() | nil,
  name: String.t() | nil,
  release_id: Ecto.UUID.t() | nil,
  retired_at: DateTime.t() | nil,
  type_rank: integer() | nil
}
```

---

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