# `Scrypath.Meilisearch`
[🔗](https://github.com/szTheory/scrypath/blob/v0.3.0/lib/scrypath/meilisearch.ex#L1)

Meilisearch-specific runtime entrypoints for Scrypath.

`Scrypath.*` remains the common path for sync and the stable search happy path.
This namespace is the explicit escape hatch for Meilisearch-native behavior that
should stay visible instead of being tunneled through generic options.

Use `Scrypath.search/3` for text plus validated `filter:`, `sort:`, `page:`,
and optional explicit hydration through `repo:`. Use `Scrypath.Meilisearch.search/3`
when you need native Meilisearch payloads that do not belong on the common path.

# `apply_settings`

```elixir
@spec apply_settings(module(), String.t(), keyword()) ::
  {:ok, map()} | {:error, term()}
```

# `create_index`

```elixir
@spec create_index(module(), String.t() | atom() | nil, keyword()) ::
  {:ok, map()} | {:error, term()}
```

# `search`

```elixir
@spec search(module(), Scrypath.Query.t() | map() | String.t(), keyword()) ::
  {:ok, map()} | {:error, term()}
```

Run a native Meilisearch search request against either the live index or an
explicit target/index override.

# `swap_indexes`

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

---

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