Interface: EntityMutationHooks\<TTable\>
Interface: EntityMutationHooks<TTable>
Mutation lifecycle for one entity. A before hook may return a replacement
payload, which is revalidated against the trusted schema before it is
persisted. Every hook, the mutation, and any write a hook issues through
ctx.app.database share one transaction, so a rejection anywhere rolls all
of them back. Throw DatabaseValidationError to answer a generated route
with 422; any other failure stays an opaque server error.
Type Parameters
| Type Parameter | Default type |
|---|---|
TTable extends string | string |
Methods
afterCreate()?
optional afterCreate(row: FacetOf<TTable, "row">, context: HookContext): MaybePromise<void>;Parameters
| Parameter | Type |
|---|---|
row | FacetOf<TTable, "row"> |
context | HookContext |
Returns
MaybePromise<void>
afterDelete()?
optional afterDelete(id: IdValue, context: HookContext): MaybePromise<void>;Parameters
| Parameter | Type |
|---|---|
id | IdValue |
context | HookContext |
Returns
MaybePromise<void>
afterUpdate()?
optional afterUpdate(row: FacetOf<TTable, "row">, context: HookContext): MaybePromise<void>;Parameters
| Parameter | Type |
|---|---|
row | FacetOf<TTable, "row"> |
context | HookContext |
Returns
MaybePromise<void>
afterUpsert()?
optional afterUpsert(row: FacetOf<TTable, "row">, context: HookContext): MaybePromise<void>;Parameters
| Parameter | Type |
|---|---|
row | FacetOf<TTable, "row"> |
context | HookContext |
Returns
MaybePromise<void>
beforeCreate()?
optional beforeCreate(values: FacetOf<TTable, "insert">, context: HookContext): MaybePromise<void | FacetOf<TTable, "insert">>;Parameters
| Parameter | Type |
|---|---|
values | FacetOf<TTable, "insert"> |
context | HookContext |
Returns
MaybePromise<void | FacetOf<TTable, "insert">>
beforeDelete()?
optional beforeDelete(id: IdValue, context: HookContext): MaybePromise<void>;Parameters
| Parameter | Type |
|---|---|
id | IdValue |
context | HookContext |
Returns
MaybePromise<void>
beforeUpdate()?
optional beforeUpdate(
id: IdValue,
values: FacetOf<TTable, "update">,
context: HookContext): MaybePromise<void | FacetOf<TTable, "update">>;Parameters
| Parameter | Type |
|---|---|
id | IdValue |
values | FacetOf<TTable, "update"> |
context | HookContext |
Returns
MaybePromise<void | FacetOf<TTable, "update">>
beforeUpsert()?
optional beforeUpsert(values: FacetOf<TTable, "insert">, context: HookContext): MaybePromise<void | FacetOf<TTable, "insert">>;Parameters
| Parameter | Type |
|---|---|
values | FacetOf<TTable, "insert"> |
context | HookContext |
Returns
MaybePromise<void | FacetOf<TTable, "insert">>