---
url: >-
  https://adk.nht.io/api/@nhtio/adk/batteries/media/interfaces/EngineSelectionContext.md
description: >-
  The request summary a selection stage sees: enough to implement content- and
  format-dependent rules without exposing dispatch internals.
---

# Interface: EngineSelectionContext

Defined in: [src/batteries/media/registry.ts:80](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/media/registry.ts#L80)

The request summary a selection stage sees: enough to implement content- and
format-dependent rules without exposing dispatch internals.

## Properties

| Property                                      | Type                                                                                                                   | Description                                                                                                                                                                                                                       | Defined in                                                                                                                      |
| --------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- |
|  `candidates` | [`MediaEngine`](../contracts/interfaces/MediaEngine.md)\[]                                                              | The capable engines, in supply order. Stages may exclude or reorder (mutate in place or reassign); survivors are re-filtered against the original capable set, so a stage can never add an engine the capability filter rejected. | [src/batteries/media/registry.ts:101](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/media/registry.ts#L101) |
|  `kind`             | `"convert"` | `"edit"` | `"mutate"`                                                                                  | Which capability is being dispatched.                                                                                                                                                                                             | [src/batteries/media/registry.ts:82](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/media/registry.ts#L82)   |
|  `request`       | { `bytes`: `Uint8Array`; `filename`: `string`; `mimeType`: `string`; `ops?`: readonly `string`\[]; `to?`: `string`; } | The dispatch request (for convert under multi-hop, the CURRENT hop's input/target).                                                                                                                                               | [src/batteries/media/registry.ts:84](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/media/registry.ts#L84)   |
| `request.bytes`                               | `Uint8Array`                                                                                                           | The input bytes — content-dependent rules (e.g. workbook complexity) need them.                                                                                                                                                   | [src/batteries/media/registry.ts:90](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/media/registry.ts#L90)   |
| `request.filename`                            | `string`                                                                                                               | The input filename.                                                                                                                                                                                                               | [src/batteries/media/registry.ts:88](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/media/registry.ts#L88)   |
| `request.mimeType`                            | `string`                                                                                                               | The input MIME type.                                                                                                                                                                                                              | [src/batteries/media/registry.ts:86](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/media/registry.ts#L86)   |
| `request.ops?`                                | readonly `string`\[]                                                                                                    | The requested mutate operations.                                                                                                                                                                                                  | [src/batteries/media/registry.ts:94](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/media/registry.ts#L94)   |
| `request.to?`                                 | `string`                                                                                                               | The convert target token, or the mutate `format.to` when a re-encode was requested.                                                                                                                                               | [src/batteries/media/registry.ts:92](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/batteries/media/registry.ts#L92)   |
