> ## Documentation Index
> Fetch the complete documentation index at: https://docs.bijection.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Class: SeriesTableDefinition<Fields>

> A typed series declaration in the ordinary application schema.

[server](/api/modules/server).SeriesTableDefinition

A typed series declaration in the ordinary application schema.

## Type parameters

| Name | Type |
| :- | :- |
| `Fields` | extends `Record`\<`string`, [`GenericValidator`](/api/modules/values#genericvalidator)> |

## Hierarchy

* [`TableDefinition`](/api/classes/server.TableDefinition)\<`ReturnType`\<typeof `envelope`>>

  ↳ **`SeriesTableDefinition`**

## Properties

### isSource

• `Readonly` **isSource**: `false`

Type-only source ownership, preserved by every builder method.

#### Inherited from

[TableDefinition](/api/classes/server.TableDefinition).[isSource](/api/classes/server.TableDefinition#issource)

***

### relations

• `Readonly` **relations**: `Object`

Type-only declared relations, preserved by every builder method.

#### Inherited from

[TableDefinition](/api/classes/server.TableDefinition).[relations](/api/classes/server.TableDefinition#relations)

***

### validator

• **validator**: [`VObject`](/api/classes/values.VObject)\<\{ `values`: [`Expand`](/api/modules/server#expand)\<\{ \[Property in string | number | symbol]?: Exclude\<Infer\<Fields\[Property]>, undefined> } & \{ \[Property in string | number | symbol]: Infer\<Fields\[Property]> }> ; `key`: `string` ; `source`: `string` ; `series`: `string` ; `event`: `string` ; `time`: `bigint` ; `order`: `bigint` ; `receivedAt`: `bigint` ; `admission`: `bigint` ; `late`: `boolean`  }, \{ `series`: [`VString`](/api/classes/values.VString)\<`string`, `"required"`> ; `source`: [`VString`](/api/classes/values.VString)\<`string`, `"required"`> ; `event`: [`VString`](/api/classes/values.VString)\<`string`, `"required"`> ; `key`: [`VString`](/api/classes/values.VString)\<`string`, `"required"`> ; `time`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, `"required"`> ; `order`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, `"required"`> ; `receivedAt`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, `"required"`> ; `admission`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, `"required"`> ; `late`: [`VBoolean`](/api/classes/values.VBoolean)\<`boolean`, `"required"`> ; `values`: [`VObject`](/api/classes/values.VObject)\<[`Expand`](/api/modules/server#expand)\<\{ \[Property in string | number | symbol]?: Exclude\<Infer\<Fields\[Property]>, undefined> } & \{ \[Property in string | number | symbol]: Infer\<Fields\[Property]> }>, `Fields`, `"required"`, \{ \[Property in string | number | symbol]: Property | \`$\{Property & string}.$\{Fields\[Property]\["fieldPaths"]}\` }\[keyof `Fields`] & `string`>  }, `"required"`, `"values"` | `"key"` | `"source"` | `"series"` | `"event"` | `"time"` | `"order"` | `"receivedAt"` | `"admission"` | `"late"` | \`values.$\{\{ [Property in string \| number \| symbol]: Property \| \`$\{Property & string}.\$\{Fields\[Property]\["fieldPaths"]}\` }\[keyof Fields] & string}\`>

#### Inherited from

[TableDefinition](/api/classes/server.TableDefinition).[validator](/api/classes/server.TableDefinition#validator)

## Methods

### access

▸ **access**(`definition`): [`SeriesTableDefinition`](/api/classes/server.SeriesTableDefinition)\<`Fields`>

Authorize reads of this complete table or view, without filtering rows or
redacting fields. View inputs must independently permit disclosure.
The query returns null or the existing positive validity result; throwing
refuses access. Declare at most 32 distinct ordinary policy input tables.

#### Parameters

| Name | Type |
| :- | :- |
| `definition` | [`ReadAccess`](/api/modules/server#readaccess) |

#### Returns

[`SeriesTableDefinition`](/api/classes/server.SeriesTableDefinition)\<`Fields`>

#### Inherited from

[TableDefinition](/api/classes/server.TableDefinition).[access](/api/classes/server.TableDefinition#access)

▸ **access**(`definition`): [`SeriesTableDefinition`](/api/classes/server.SeriesTableDefinition)\<`Fields`>

Let the application's members read and change this table's rows and
files, decided by the application's member policies. The table must not
already declare read access or a governing rule.

#### Parameters

| Name | Type |
| :- | :- |
| `definition` | [`Members`](/api/modules/server#members) |

#### Returns

[`SeriesTableDefinition`](/api/classes/server.SeriesTableDefinition)\<`Fields`>

#### Inherited from

[TableDefinition](/api/classes/server.TableDefinition).[access](/api/classes/server.TableDefinition#access)

▸ **access**\<`R`, `B`>(`definition`, `...binding`): [`SeriesTableDefinition`](/api/classes/server.SeriesTableDefinition)\<`Fields`> & `AccessTableBinding`\<`R`, `B`>

Bind a semantic resource to this table's storage. `defineSchema` infers
its table identity and parent index, validates the field bindings, and
installs the model's read, write and disclosure policies.

#### Type parameters

| Name | Type |
| :- | :- |
| `R` | extends [`AccessResource`](/api/interfaces/server.AccessResource)\<`undefined` \| `string`, `string`, `string`, [`AccessModelDefinition`](/api/modules/server#accessmodeldefinition), `R`> |
| `B` | extends `object` = \{} |

#### Parameters

| Name | Type |
| :- | :- |
| `definition` | `R` |
| `...binding` | `R` extends [`AccessResource`](/api/interfaces/server.AccessResource)\<`string`, `string`, `string`, [`AccessModelDefinition`](/api/modules/server#accessmodeldefinition)> ? \[options: AccessResourceBinding\<"values" \| "key" \| "source" \| "series" \| "event" \| "time" \| "order" \| "receivedAt" \| "admission" \| "late", R extends AccessResource\<any, P, string, AccessModelDefinition> ? P : never> & B & Object & Object] : \[options?: AccessResourceBinding\<"values" \| "key" \| "source" \| "series" \| "event" \| "time" \| "order" \| "receivedAt" \| "admission" \| "late", R extends AccessResource\<any, P, string, AccessModelDefinition> ? P : never> & B & Object] |

#### Returns

[`SeriesTableDefinition`](/api/classes/server.SeriesTableDefinition)\<`Fields`> & `AccessTableBinding`\<`R`, `B`>

#### Inherited from

[TableDefinition](/api/classes/server.TableDefinition).[access](/api/classes/server.TableDefinition#access)

***

### input

▸ **input**(`...limits`): `Object`

The operation arguments of this table's documents, each file field an
upload with its limits:
`args: reports.input({ files: { maxSize: "10 MB", maxFiles: 2 } })`.

#### Parameters

| Name | Type |
| :- | :- |
| `...limits` | keyof `InputLimits`\<\{ `values`: [`Expand`](/api/modules/server#expand)\<\{ \[Property in string \| number \| symbol]?: Exclude\<Infer\<Fields\[Property]>, undefined> } & \{ \[Property in string \| number \| symbol]: Infer\<Fields\[Property]> }> ; `key`: `string` ; `source`: `string` ; `series`: `string` ; `event`: `string` ; `time`: `bigint` ; `order`: `bigint` ; `receivedAt`: `bigint` ; `admission`: `bigint` ; `late`: `boolean`  }> extends `never` ? \[limits?: Record\<string, never>] : \[limits: InputLimits\<Object>] |

#### Returns

`Object`

| Name | Type |
| :- | :- |
| `series` | [`Validator`](/api/modules/values#validator)\<`string`, `"required"`, `any`> |
| `source` | [`Validator`](/api/modules/values#validator)\<`string`, `"required"`, `any`> |
| `event` | [`Validator`](/api/modules/values#validator)\<`string`, `"required"`, `any`> |
| `key` | [`Validator`](/api/modules/values#validator)\<`string`, `"required"`, `any`> |
| `time` | [`Validator`](/api/modules/values#validator)\<`bigint`, `"required"`, `any`> |
| `order` | [`Validator`](/api/modules/values#validator)\<`bigint`, `"required"`, `any`> |
| `receivedAt` | [`Validator`](/api/modules/values#validator)\<`bigint`, `"required"`, `any`> |
| `admission` | [`Validator`](/api/modules/values#validator)\<`bigint`, `"required"`, `any`> |
| `late` | [`Validator`](/api/modules/values#validator)\<`boolean`, `"required"`, `any`> |
| `values` | [`VObject`](/api/classes/values.VObject)\<[`Expand`](/api/modules/server#expand)\<\{ \[Property in string \| number \| symbol]?: Exclude\<Infer\<Fields\[Property]>, undefined> } & \{ \[Property in string \| number \| symbol]: Infer\<Fields\[Property]> }>, `Fields`, `"required"`, \{ \[Property in string \| number \| symbol]: Property \| \`$\{Property & string}.$\{Fields\[Property]\["fieldPaths"]}\` }\[keyof `Fields`] & `string`> extends [`Validator`](/api/modules/values#validator)\<`Type`, `IsOptional`, `any`> ? [`Validator`](/api/modules/values#validator)\<`Uploaded`\<`Type`>, `IsOptional`, `any`> : `never` |

#### Inherited from

[TableDefinition](/api/classes/server.TableDefinition).[input](/api/classes/server.TableDefinition#input)

***

### link

▸ **link**\<`Fields`, `Names`>(`this`, `endpoints`, `names?`): [`TableDefinition`](/api/classes/server.TableDefinition)\<[`VObject`](/api/classes/values.VObject)\<\{ `values`: [`Expand`](/api/modules/server#expand)\<\{ \[Property in string | number | symbol]?: Exclude\<Infer\<Fields\[Property]>, undefined> } & \{ \[Property in string | number | symbol]: Infer\<Fields\[Property]> }> ; `key`: `string` ; `source`: `string` ; `series`: `string` ; `event`: `string` ; `time`: `bigint` ; `order`: `bigint` ; `receivedAt`: `bigint` ; `admission`: `bigint` ; `late`: `boolean`  }, \{ `series`: [`VString`](/api/classes/values.VString)\<`string`, `"required"`> ; `source`: [`VString`](/api/classes/values.VString)\<`string`, `"required"`> ; `event`: [`VString`](/api/classes/values.VString)\<`string`, `"required"`> ; `key`: [`VString`](/api/classes/values.VString)\<`string`, `"required"`> ; `time`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, `"required"`> ; `order`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, `"required"`> ; `receivedAt`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, `"required"`> ; `admission`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, `"required"`> ; `late`: [`VBoolean`](/api/classes/values.VBoolean)\<`boolean`, `"required"`> ; `values`: [`VObject`](/api/classes/values.VObject)\<[`Expand`](/api/modules/server#expand)\<\{ \[Property in string | number | symbol]?: Exclude\<Infer\<Fields\[Property]>, undefined> } & \{ \[Property in string | number | symbol]: Infer\<Fields\[Property]> }>, `Fields`, `"required"`, \{ \[Property in string | number | symbol]: Property | \`$\{Property & string}.$\{Fields\[Property]\["fieldPaths"]}\` }\[keyof `Fields`] & `string`>  }, `"required"`, `"values"` | `"key"` | `"source"` | `"series"` | `"event"` | `"time"` | `"order"` | `"receivedAt"` | `"admission"` | `"late"` | \`values.$\{\{ [Property in string \| number \| symbol]: Property \| \`$\{Property & string}.$\{Fields[Property]["fieldPaths"]\}\` }[keyof Fields] & string}\`\>, \{\}, \{\}, \{\}, ``false``, [`LinkRelations`](/api/modules/server#linkrelations)\<[`VObject`](/api/classes/values.VObject)\<\{ `values`: [`Expand`](/api/modules/server#expand)\<\{ [Property in string \| number \| symbol]?: Exclude\<Infer\<Fields[Property]\>, undefined\> \} & \{ [Property in string \| number \| symbol]: Infer\<Fields[Property]\> \}\> ; `key`: `string` ; `source`: `string` ; `series`: `string` ; `event`: `string` ; `time`: `bigint` ; `order`: `bigint` ; `receivedAt`: `bigint` ; `admission`: `bigint` ; `late`: `boolean`  \}, \{ `series`: [`VString`](/api/classes/values.VString)\<`string`, ``"required"``\> ; `source`: [`VString`](/api/classes/values.VString)\<`string`, ``"required"``\> ; `event`: [`VString`](/api/classes/values.VString)\<`string`, ``"required"``\> ; `key`: [`VString`](/api/classes/values.VString)\<`string`, ``"required"``\> ; `time`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, ``"required"``\> ; `order`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, ``"required"``\> ; `receivedAt`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, ``"required"``\> ; `admission`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, ``"required"``\> ; `late`: [`VBoolean`](/api/classes/values.VBoolean)\<`boolean`, ``"required"``\> ; `values`: [`VObject`](/api/classes/values.VObject)\<[`Expand`](/api/modules/server#expand)\<\{ [Property in string \| number \| symbol]?: Exclude\<Infer\<Fields[Property]\>, undefined\> \} & \{ [Property in string \| number \| symbol]: Infer\<Fields[Property]\> \}\>, `Fields`, ``"required"``, \{ [Property in string \| number \| symbol]: Property \| \`$\{Property & string}.$\{Fields[Property]["fieldPaths"]}\` \}[keyof `Fields`] & `string`\>  \}, ``"required"``, ``"values"`` \| ``"key"`` \| ``"source"`` \| ``"series"`` \| ``"event"`` \| ``"time"`` \| ``"order"`` \| ``"receivedAt"`` \| ``"admission"`` \| ``"late"`` \| \`values.$\{\{ \[Property in string | number | symbol]: Property | \`$\{Property & string\}.$\{Fields\[Property]\["fieldPaths"]}\` }\[keyof Fields] & string}\`>, `Fields`, `Names`>>

Declare a binary association on required typed ID fields.
Each bound counts live associations incident on an endpoint. A nonzero
minimum applies to every live row in that endpoint's declared table.
Endpoints are immutable; ending and restoring a pair preserves its retained
identity. Native identity and commit enforcement are required for admission.
One endpoint may name `_storage` when its minimum is zero and the relationship
declares read access and a governing rule. Such attachments require sealed
content and preserve the file's existing source restrictions.

Each endpoint is a required reference of the link table, with the same
navigation defaults as [reference](/api/classes/server.TableDefinition#reference): `as` reaches the
endpoint from a link row, `inverse` (default: this table's name) lists an
endpoint's incident link rows, and `opposite`, when named, lists the
endpoints linked to it. A link between two rows of one table needs
explicit names for both roles.

#### Type parameters

| Name | Type |
| :- | :- |
| `Fields` | extends `never` |
| `Names` | extends `Partial`\<`Record`\<`Fields`, [`LinkEndpointNames`](/api/modules/server#linkendpointnames)>> = \{} |

#### Parameters

| Name | Type |
| :- | :- |
| `this` | `never` |
| `endpoints` | `Record`\<`Fields`, readonly \[`number`, `number` \| `"many"`]> |
| `names?` | `Names` |

#### Returns

[`TableDefinition`](/api/classes/server.TableDefinition)\<[`VObject`](/api/classes/values.VObject)\<\{ `values`: [`Expand`](/api/modules/server#expand)\<\{ \[Property in string | number | symbol]?: Exclude\<Infer\<Fields\[Property]>, undefined> } & \{ \[Property in string | number | symbol]: Infer\<Fields\[Property]> }> ; `key`: `string` ; `source`: `string` ; `series`: `string` ; `event`: `string` ; `time`: `bigint` ; `order`: `bigint` ; `receivedAt`: `bigint` ; `admission`: `bigint` ; `late`: `boolean`  }, \{ `series`: [`VString`](/api/classes/values.VString)\<`string`, `"required"`> ; `source`: [`VString`](/api/classes/values.VString)\<`string`, `"required"`> ; `event`: [`VString`](/api/classes/values.VString)\<`string`, `"required"`> ; `key`: [`VString`](/api/classes/values.VString)\<`string`, `"required"`> ; `time`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, `"required"`> ; `order`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, `"required"`> ; `receivedAt`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, `"required"`> ; `admission`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, `"required"`> ; `late`: [`VBoolean`](/api/classes/values.VBoolean)\<`boolean`, `"required"`> ; `values`: [`VObject`](/api/classes/values.VObject)\<[`Expand`](/api/modules/server#expand)\<\{ \[Property in string | number | symbol]?: Exclude\<Infer\<Fields\[Property]>, undefined> } & \{ \[Property in string | number | symbol]: Infer\<Fields\[Property]> }>, `Fields`, `"required"`, \{ \[Property in string | number | symbol]: Property | \`$\{Property & string}.$\{Fields\[Property]\["fieldPaths"]}\` }\[keyof `Fields`] & `string`>  }, `"required"`, `"values"` | `"key"` | `"source"` | `"series"` | `"event"` | `"time"` | `"order"` | `"receivedAt"` | `"admission"` | `"late"` | \`values.$\{\{ [Property in string \| number \| symbol]: Property \| \`$\{Property & string}.$\{Fields[Property]["fieldPaths"]\}\` }[keyof Fields] & string}\`\>, \{\}, \{\}, \{\}, ``false``, [`LinkRelations`](/api/modules/server#linkrelations)\<[`VObject`](/api/classes/values.VObject)\<\{ `values`: [`Expand`](/api/modules/server#expand)\<\{ [Property in string \| number \| symbol]?: Exclude\<Infer\<Fields[Property]\>, undefined\> \} & \{ [Property in string \| number \| symbol]: Infer\<Fields[Property]\> \}\> ; `key`: `string` ; `source`: `string` ; `series`: `string` ; `event`: `string` ; `time`: `bigint` ; `order`: `bigint` ; `receivedAt`: `bigint` ; `admission`: `bigint` ; `late`: `boolean`  \}, \{ `series`: [`VString`](/api/classes/values.VString)\<`string`, ``"required"``\> ; `source`: [`VString`](/api/classes/values.VString)\<`string`, ``"required"``\> ; `event`: [`VString`](/api/classes/values.VString)\<`string`, ``"required"``\> ; `key`: [`VString`](/api/classes/values.VString)\<`string`, ``"required"``\> ; `time`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, ``"required"``\> ; `order`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, ``"required"``\> ; `receivedAt`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, ``"required"``\> ; `admission`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, ``"required"``\> ; `late`: [`VBoolean`](/api/classes/values.VBoolean)\<`boolean`, ``"required"``\> ; `values`: [`VObject`](/api/classes/values.VObject)\<[`Expand`](/api/modules/server#expand)\<\{ [Property in string \| number \| symbol]?: Exclude\<Infer\<Fields[Property]\>, undefined\> \} & \{ [Property in string \| number \| symbol]: Infer\<Fields[Property]\> \}\>, `Fields`, ``"required"``, \{ [Property in string \| number \| symbol]: Property \| \`$\{Property & string}.$\{Fields[Property]["fieldPaths"]}\` \}[keyof `Fields`] & `string`\>  \}, ``"required"``, ``"values"`` \| ``"key"`` \| ``"source"`` \| ``"series"`` \| ``"event"`` \| ``"time"`` \| ``"order"`` \| ``"receivedAt"`` \| ``"admission"`` \| ``"late"`` \| \`values.$\{\{ \[Property in string | number | symbol]: Property | \`$\{Property & string\}.$\{Fields\[Property]\["fieldPaths"]}\` }\[keyof Fields] & string}\`>, `Fields`, `Names`>>

#### Inherited from

[TableDefinition](/api/classes/server.TableDefinition).[link](/api/classes/server.TableDefinition#link)

***

### indexes

▸ \*\* indexes\*\*(): \{ `indexDescriptor`: `string` ; `fields`: `string`\[]  }\[]

This API is experimental: it may change or disappear.

Returns indexes defined on this table.
Intended for the advanced use cases of dynamically deciding which index to use for a query.
If you think you need this, please chime in on ths issue in the Bijection JS GitHub repo.

#### Returns

\{ `indexDescriptor`: `string` ; `fields`: `string`\[]  }\[]

#### Inherited from

[TableDefinition](/api/classes/server.TableDefinition).\[ indexes]\(server.TableDefinition.md# indexes)

***

### self

▸ `Protected` **self**(): [`TableDefinition`](/api/classes/server.TableDefinition)\<[`VObject`](/api/classes/values.VObject)\<\{ `values`: [`Expand`](/api/modules/server#expand)\<\{ \[Property in string | number | symbol]?: Exclude\<Infer\<Fields\[Property]>, undefined> } & \{ \[Property in string | number | symbol]: Infer\<Fields\[Property]> }> ; `key`: `string` ; `source`: `string` ; `series`: `string` ; `event`: `string` ; `time`: `bigint` ; `order`: `bigint` ; `receivedAt`: `bigint` ; `admission`: `bigint` ; `late`: `boolean`  }, \{ `series`: [`VString`](/api/classes/values.VString)\<`string`, `"required"`> ; `source`: [`VString`](/api/classes/values.VString)\<`string`, `"required"`> ; `event`: [`VString`](/api/classes/values.VString)\<`string`, `"required"`> ; `key`: [`VString`](/api/classes/values.VString)\<`string`, `"required"`> ; `time`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, `"required"`> ; `order`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, `"required"`> ; `receivedAt`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, `"required"`> ; `admission`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, `"required"`> ; `late`: [`VBoolean`](/api/classes/values.VBoolean)\<`boolean`, `"required"`> ; `values`: [`VObject`](/api/classes/values.VObject)\<[`Expand`](/api/modules/server#expand)\<\{ \[Property in string | number | symbol]?: Exclude\<Infer\<Fields\[Property]>, undefined> } & \{ \[Property in string | number | symbol]: Infer\<Fields\[Property]> }>, `Fields`, `"required"`, \{ \[Property in string | number | symbol]: Property | \`$\{Property & string}.$\{Fields\[Property]\["fieldPaths"]}\` }\[keyof `Fields`] & `string`>  }, `"required"`, `"values"` | `"key"` | `"source"` | `"series"` | `"event"` | `"time"` | `"order"` | `"receivedAt"` | `"admission"` | `"late"` | \`values.$\{\{ [Property in string \| number \| symbol]: Property \| \`$\{Property & string}.\$\{Fields\[Property]\["fieldPaths"]}\` }\[keyof Fields] & string}\`>, \{}, \{}, \{}, `false`, \{}>

Work around for [https://github.com/microsoft/TypeScript/issues/57035](https://github.com/microsoft/TypeScript/issues/57035)

#### Returns

[`TableDefinition`](/api/classes/server.TableDefinition)\<[`VObject`](/api/classes/values.VObject)\<\{ `values`: [`Expand`](/api/modules/server#expand)\<\{ \[Property in string | number | symbol]?: Exclude\<Infer\<Fields\[Property]>, undefined> } & \{ \[Property in string | number | symbol]: Infer\<Fields\[Property]> }> ; `key`: `string` ; `source`: `string` ; `series`: `string` ; `event`: `string` ; `time`: `bigint` ; `order`: `bigint` ; `receivedAt`: `bigint` ; `admission`: `bigint` ; `late`: `boolean`  }, \{ `series`: [`VString`](/api/classes/values.VString)\<`string`, `"required"`> ; `source`: [`VString`](/api/classes/values.VString)\<`string`, `"required"`> ; `event`: [`VString`](/api/classes/values.VString)\<`string`, `"required"`> ; `key`: [`VString`](/api/classes/values.VString)\<`string`, `"required"`> ; `time`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, `"required"`> ; `order`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, `"required"`> ; `receivedAt`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, `"required"`> ; `admission`: [`VInt64`](/api/classes/values.VInt64)\<`bigint`, `"required"`> ; `late`: [`VBoolean`](/api/classes/values.VBoolean)\<`boolean`, `"required"`> ; `values`: [`VObject`](/api/classes/values.VObject)\<[`Expand`](/api/modules/server#expand)\<\{ \[Property in string | number | symbol]?: Exclude\<Infer\<Fields\[Property]>, undefined> } & \{ \[Property in string | number | symbol]: Infer\<Fields\[Property]> }>, `Fields`, `"required"`, \{ \[Property in string | number | symbol]: Property | \`$\{Property & string}.$\{Fields\[Property]\["fieldPaths"]}\` }\[keyof `Fields`] & `string`>  }, `"required"`, `"values"` | `"key"` | `"source"` | `"series"` | `"event"` | `"time"` | `"order"` | `"receivedAt"` | `"admission"` | `"late"` | \`values.$\{\{ [Property in string \| number \| symbol]: Property \| \`$\{Property & string}.\$\{Fields\[Property]\["fieldPaths"]}\` }\[keyof Fields] & string}\`>, \{}, \{}, \{}, `false`, \{}>

#### Inherited from

[TableDefinition](/api/classes/server.TableDefinition).[self](/api/classes/server.TableDefinition#self)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.