---
url: 'https://adk.nht.io/api/@nhtio/adk/common/functions/resolveSpoolReader.md'
---

# Function: resolveSpoolReader()

```ts
function resolveSpoolReader(descriptor: ReaderDescriptor): SpoolReader;
```

Defined in: [src/lib/contracts/reader\_resolvers.ts:103](https://github.com/NHTIO/ADK/blob/v1.20260713.1/src/src/lib/contracts/reader_resolvers.ts#L103)

Re-bind a spool reader descriptor to a live [SpoolReader](../../spooled_artifact/interfaces/SpoolReader.md).

## Parameters

| Parameter    | Type                                                    | Description                         |
| ------------ | ------------------------------------------------------- | ----------------------------------- |
| `descriptor` | [`ReaderDescriptor`](../interfaces/ReaderDescriptor.md) | The handle captured at encode time. |

## Returns

[`SpoolReader`](../../spooled_artifact/interfaces/SpoolReader.md)

A working spool reader.

## Remarks

Called by [@nhtio/adk!SpooledArtifact](../../spooled_artifact/classes/SpooledArtifact.md)'s `[DECODE_METHOD]` (and its subclasses'). Throws if no
resolver is registered for the descriptor's `tag`.

## Throws

[@nhtio/adk!E\_NO\_READER\_RESOLVER](../../exceptions/variables/E_NO_READER_RESOLVER.md) when no resolver is registered for `descriptor.tag`.
