# `AshEvents.Events.Info`
[🔗](https://github.com/ash-project/ash_events/blob/v0.7.0/lib/events/events.ex#L86)

  @moduledoc "Introspection helpers for `AshEvents.Events`"

# `events_allowed_change_modules`

```elixir
@spec events_allowed_change_modules(dsl_or_extended :: module() | map()) ::
  {:ok, keyword()} | :error
```

A keyword list of action names and whitelisted change modules that should not be removed during event replay.

# `events_allowed_change_modules!`

```elixir
@spec events_allowed_change_modules!(dsl_or_extended :: module() | map()) ::
  keyword() | no_return()
```

A keyword list of action names and whitelisted change modules that should not be removed during event replay.

# `events_create_timestamp`

```elixir
@spec events_create_timestamp(dsl_or_extended :: module() | map()) ::
  {:ok, atom()} | :error
```

The name of the create timestamp attribute on the resource

# `events_create_timestamp!`

```elixir
@spec events_create_timestamp!(dsl_or_extended :: module() | map()) ::
  atom() | no_return()
```

The name of the create timestamp attribute on the resource

# `events_current_action_versions`

```elixir
@spec events_current_action_versions(dsl_or_extended :: module() | map()) ::
  {:ok, keyword()} | :error
```

A keyword list of action versions. This will be used to set the version in the created events when the actions are run. Version will default to 1 for all actions that are not listed here.

# `events_current_action_versions!`

```elixir
@spec events_current_action_versions!(dsl_or_extended :: module() | map()) ::
  keyword() | no_return()
```

A keyword list of action versions. This will be used to set the version in the created events when the actions are run. Version will default to 1 for all actions that are not listed here.

# `events_event_log`

```elixir
@spec events_event_log(dsl_or_extended :: module() | map()) ::
  {:ok, module()} | :error
```

The event-log resource that creates and stores events.

# `events_event_log!`

```elixir
@spec events_event_log!(dsl_or_extended :: module() | map()) :: module() | no_return()
```

The event-log resource that creates and stores events.

# `events_ignore_actions`

```elixir
@spec events_ignore_actions(dsl_or_extended :: module() | map()) ::
  {:ok, [atom()]} | :error
```

A list of actions that should not have events created when run.

# `events_ignore_actions!`

```elixir
@spec events_ignore_actions!(dsl_or_extended :: module() | map()) ::
  [atom()] | no_return()
```

A list of actions that should not have events created when run.

# `events_only_actions`

```elixir
@spec events_only_actions(dsl_or_extended :: module() | map()) ::
  {:ok, [atom()]} | :error
```

A list of actions that should be the only actions that have events created when run.

# `events_only_actions!`

```elixir
@spec events_only_actions!(dsl_or_extended :: module() | map()) ::
  [atom()] | no_return()
```

A list of actions that should be the only actions that have events created when run.

# `events_options`

```elixir
@spec events_options(dsl_or_extended :: module() | map()) :: %{
  required(atom()) =&gt; any()
}
```

events DSL options

Returns a map containing the and any configured or default values.

# `events_replay_non_input_attribute_changes`

```elixir
@spec events_replay_non_input_attribute_changes(dsl_or_extended :: module() | map()) ::
  {:ok, keyword()} | :error
```

Configure how non-input attribute changes are handled during replay for each action. Options are :force_change (apply via force_change_attributes) or :as_arguments (merge into action input). Defaults to :force_change for all actions.

# `events_replay_non_input_attribute_changes!`

```elixir
@spec events_replay_non_input_attribute_changes!(dsl_or_extended :: module() | map()) ::
  keyword() | no_return()
```

Configure how non-input attribute changes are handled during replay for each action. Options are :force_change (apply via force_change_attributes) or :as_arguments (merge into action input). Defaults to :force_change for all actions.

# `events_update_timestamp`

```elixir
@spec events_update_timestamp(dsl_or_extended :: module() | map()) ::
  {:ok, atom()} | :error
```

The name of the update timestamp attribute on the resource

# `events_update_timestamp!`

```elixir
@spec events_update_timestamp!(dsl_or_extended :: module() | map()) ::
  atom() | no_return()
```

The name of the update timestamp attribute on the resource

---

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