> **serialize**\<`T`\>(`req`, `options`, `data`): `Partial`\<`T`\> \| (`Partial`\<`T`\> \| `undefined`)[] \| `undefined`

## Type Parameters

### T

`T`

## Parameters

### req

`Request`

### options

[`ModelRouterOptions`](../interfaces/ModelRouterOptions.md)\<`T`\>

### data

`Document`\<`unknown`, `unknown`, `unknown`, `Record`\<`string`, `any`\>, \{ \}\> & `T` \| `Document`\<`unknown`, `unknown`, `unknown`, `Record`\<`string`, `any`\>, \{ \}\> & `T`[]

## Returns

`Partial`\<`T`\> \| (`Partial`\<`T`\> \| `undefined`)[] \| `undefined`
