# `AshOnetime.ReplaySafety`
[🔗](https://github.com/baselabs/ash_onetime/blob/v1.5.0/lib/ash_onetime/replay_safety.ex#L1)

Declaration for lifecycle callbacks that are safe during stored-result replay.

# `capabilities`

```elixir
@type capabilities() :: %{
  notifications: boolean(),
  effects: boolean(),
  around_action: boolean(),
  marker: :unused | :consumed
}
```

# `mode`

```elixir
@type mode() :: :pure | :replay_aware
```

# `replay_capabilities`

```elixir
@callback replay_capabilities(opts :: Keyword.t()) :: capabilities()
```

# `replay_safety`

```elixir
@callback replay_safety(opts :: Keyword.t()) :: mode()
```

---

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