Type parameters
Hierarchy
-
TableDefinition<ReturnType<typeofenvelope>> ↳SeriesTableDefinition
Properties
isSource
•Readonly isSource: false
Type-only source ownership, preserved by every builder method.
Inherited from
TableDefinition.isSourcerelations
•Readonly relations: Object
Type-only declared relations, preserved by every builder method.
Inherited from
TableDefinition.relationsvalidator
• validator:VObject<{ values: 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<string, "required"> ; source: VString<string, "required"> ; event: VString<string, "required"> ; key: VString<string, "required"> ; time: VInt64<bigint, "required"> ; order: VInt64<bigint, "required"> ; receivedAt: VInt64<bigint, "required"> ; admission: VInt64<bigint, "required"> ; late: VBoolean<boolean, "required"> ; values: VObject<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.validatorMethods
access
▸ access(definition): 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
Returns
SeriesTableDefinition<Fields>
Inherited from
TableDefinition.access ▸ access(definition): 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
Returns
SeriesTableDefinition<Fields>
Inherited from
TableDefinition.access ▸ access<R, B>(definition, ...binding): 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
Parameters
Returns
SeriesTableDefinition<Fields> & AccessTableBinding<R, B>
Inherited from
TableDefinition.accessinput
▸ 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
Returns
Object
Inherited from
TableDefinition.inputlink
▸ link<Fields, Names>(this, endpoints, names?): TableDefinition<VObject<{ values: 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<string, "required"> ; source: VString<string, "required"> ; event: VString<string, "required"> ; key: VString<string, "required"> ; time: VInt64<bigint, "required"> ; order: VInt64<bigint, "required"> ; receivedAt: VInt64<bigint, "required"> ; admission: VInt64<bigint, "required"> ; late: VBoolean<boolean, "required"> ; values: VObject<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: 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
Parameters
Returns
TableDefinition<VObject<{ values: 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<string, "required"> ; source: VString<string, "required"> ; event: VString<string, "required"> ; key: VString<string, "required"> ; time: VInt64<bigint, "required"> ; order: VInt64<bigint, "required"> ; receivedAt: VInt64<bigint, "required"> ; admission: VInt64<bigint, "required"> ; late: VBoolean<boolean, "required"> ; values: VObject<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.linkindexes
▸ ** 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.[ indexes](server.TableDefinition.md# indexes)self
▸Protected self(): TableDefinition<VObject<{ values: 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<string, "required"> ; source: VString<string, "required"> ; event: VString<string, "required"> ; key: VString<string, "required"> ; time: VInt64<bigint, "required"> ; order: VInt64<bigint, "required"> ; receivedAt: VInt64<bigint, "required"> ; admission: VInt64<bigint, "required"> ; late: VBoolean<boolean, "required"> ; values: VObject<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
Returns
TableDefinition<VObject<{ values: 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<string, "required"> ; source: VString<string, "required"> ; event: VString<string, "required"> ; key: VString<string, "required"> ; time: VInt64<bigint, "required"> ; order: VInt64<bigint, "required"> ; receivedAt: VInt64<bigint, "required"> ; admission: VInt64<bigint, "required"> ; late: VBoolean<boolean, "required"> ; values: VObject<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, {}>