---
url: >-
  https://lit-ui-router.dev/reference/ui-router-server/matcher/interfaces/UrlMatcherCompileOptions.md
---
[ui-router-server](../../index.md) / [matcher](../index.md) / UrlMatcherCompileOptions

# Interface: UrlMatcherCompileOptions\<M>

Defined in: [url-matcher.ts:438](https://github.com/simshanith/lit-ui-router/blob/740888c2b2ba358c4dfa52a122e927df6a604b12/packages/ui-router-server/src/url-matcher.ts#L438)

Per-pattern options for a compiler's `compile` (see [urlMatcherFactory](../functions/urlMatcherFactory.md)).

## Extends

* `Pick`<`UrlMatcherCompileConfig`, `"strict"` | `"caseInsensitive"`>

## Type Parameters

| Type Parameter | Default type |
| ------ | ------ |
|  `M` | `undefined` |

## Properties

| Property | Type | Description | Defined in |
| ------ | ------ | ------ | ------ |
|  `meta?` | `M` | Passenger field: rides the compiled matcher as [CompiledMatcher.meta](CompiledMatcher.md#meta), untouched by compilation. | [url-matcher.ts:446](https://github.com/simshanith/lit-ui-router/blob/740888c2b2ba358c4dfa52a122e927df6a604b12/packages/ui-router-server/src/url-matcher.ts#L446) |
|  `params?` | `Record`<`string`, `unknown`> | Relaxation vs core: `state.params` flattened to `params` (no StateDeclaration here) — a [ParamDeclaration](ParamDeclaration.md) or a shorthand static default per name. | [url-matcher.ts:444](https://github.com/simshanith/lit-ui-router/blob/740888c2b2ba358c4dfa52a122e927df6a604b12/packages/ui-router-server/src/url-matcher.ts#L444) |
