# `Lotus.Migration`
[🔗](https://github.com/typhoonworks/lotus/blob/v0.16.6/lib/lotus/migration.ex#L1)

Migration behavior for database-specific migrations.

Defines the interface that each database adapter's migration module must implement.

# `down`

```elixir
@callback down(Keyword.t()) :: :ok
```

Run the down migrations.

# `migrated_version`

```elixir
@callback migrated_version(Keyword.t()) :: non_neg_integer()
```

Check the latest version the database is migrated to.

# `up`

```elixir
@callback up(Keyword.t()) :: :ok
```

Run the up migrations.

---

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