---
url: >-
  https://adk.nht.io/api/@nhtio/adk/batteries/media/contracts/type-aliases/EngineResolver.md
description: >-
  A value-or-resolver: the canonical way to supply an engine. Resolvers may be
  sync or async (dynamic import) and may resolve to the value directly or a `{
  default: value }` module namespace. Engine resolvers run eagerly at pipeline
  construction — the engine module itself is cheap; heavy peer dependencies load
  lazily inside capability methods.
---

# Type Alias: EngineResolver\<T>

```ts
type EngineResolver<T> =
  | T
  | (() =>
      | T
      | {
          default: T;
        }
      | Promise<
          | T
          | {
              default: T;
            }
        >);
```

Defined in: [src/batteries/media/contracts.ts:52](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/media/contracts.ts#L52)

A value-or-resolver: the canonical way to supply an engine. Resolvers may be sync or async
(dynamic import) and may resolve to the value directly or a `{ default: value }` module
namespace. Engine resolvers run eagerly at pipeline construction — the engine module itself
is cheap; heavy peer dependencies load lazily inside capability methods.

## Type Parameters

| Type Parameter | Default type                                  |
| -------------- | --------------------------------------------- |
| `T`            | [`MediaEngine`](../interfaces/MediaEngine.md) |
