KnexRepository
Defined in: knex-repository.ts:18
Extended by
Section titled “Extended by”Type Parameters
Section titled “Type Parameters”T extends Record<string, unknown>
D = Partial<T>
Implements
Section titled “Implements”Repository<T,D>
Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new KnexRepository<
T,D>(app):KnexRepository<T,D>
Defined in: knex-repository.ts:42
Parameters
Section titled “Parameters”Returns
Section titled “Returns”KnexRepository<T, D>
Properties
Section titled “Properties”
protected_trx:Transaction<any,any[]> |null=null
Defined in: knex-repository.ts:20
columnCase
Section titled “columnCase”
readonlycolumnCase:"camelCase"|"snake_case"="camelCase"
Defined in: knex-repository.ts:35
Naming convention used to derive column names from entity field names. “camelCase” (default) uses entity field names verbatim as column names. “snake_case” converts every field automatically (userId -> user_id) so the entity/type can stay camelCase while the table uses snake_case columns.
createdAtField
Section titled “createdAtField”
readonlycreatedAtField:string="createdAt"
Defined in: knex-repository.ts:26
Entity-side field written for auto-managed creation timestamps.
Default
Section titled “Default”"createdAt"fieldMap
Section titled “fieldMap”
readonlyfieldMap:Record<string,string> ={}
Defined in: knex-repository.ts:40
Explicit entity-field-to-column overrides, applied before columnCase conversion.
Use this for individual columns that don’t follow the table’s general convention.
idField
Section titled “idField”
readonlyidField:string="id"
Defined in: knex-repository.ts:23
protectedreadonlyknex:Knex
Defined in: knex-repository.ts:19
tableName
Section titled “tableName”
abstractreadonlytableName:string
Defined in: knex-repository.ts:22
timestamps
Section titled “timestamps”
readonlytimestamps:boolean=true
Defined in: knex-repository.ts:24
updatedAtField
Section titled “updatedAtField”
readonlyupdatedAtField:string="updatedAt"
Defined in: knex-repository.ts:28
Entity-side field written for auto-managed update timestamps.
Default
Section titled “Default”"updatedAt"Accessors
Section titled “Accessors”Get Signature
Section titled “Get Signature”get db():
QueryBuilder
Defined in: knex-repository.ts:47
Raw query builder for this table, respecting any active transaction.
Returns
Section titled “Returns”QueryBuilder
Get Signature
Section titled “Get Signature”get
protectedqb():Knex<any,any[]> |Transaction<any,any[]>
Defined in: knex-repository.ts:79
Returns
Section titled “Returns”Knex<any, any[]> | Transaction<any, any[]>
Methods
Section titled “Methods”buildQuery()
Section titled “buildQuery()”
protectedbuildQuery(params?):QueryBuilder
Defined in: knex-repository.ts:94
Parameters
Section titled “Parameters”params?
Section titled “params?”Returns
Section titled “Returns”QueryBuilder
count()
Section titled “count()”count(
params?):Promise<number>
Defined in: knex-repository.ts:297
Parameters
Section titled “Parameters”params?
Section titled “params?”Returns
Section titled “Returns”Promise<number>
Implementation of
Section titled “Implementation of”deleteById()
Section titled “deleteById()”deleteById(
id):Promise<T>
Defined in: knex-repository.ts:272
Parameters
Section titled “Parameters”Returns
Section titled “Returns”Promise<T>
Implementation of
Section titled “Implementation of”describe()
Section titled “describe()”describe():
RepositoryCapabilities
Defined in: knex-repository.ts:51
Optional capability introspection. All
Returns
Section titled “Returns”Mantlejs
Section titled “Mantlejs”adapters implement it; user repositories may omit it.
Implementation of
Section titled “Implementation of”findAll()
Section titled “findAll()”findAll(
params?):Promise<T[]>
Defined in: knex-repository.ts:152
Parameters
Section titled “Parameters”params?
Section titled “params?”Returns
Section titled “Returns”Promise<T[]>
Implementation of
Section titled “Implementation of”findById()
Section titled “findById()”findById(
id):Promise<T|null>
Defined in: knex-repository.ts:164
Parameters
Section titled “Parameters”Returns
Section titled “Returns”Promise<T | null>
Implementation of
Section titled “Implementation of”mapDataToColumns()
Section titled “mapDataToColumns()”
protectedmapDataToColumns(data):Record<string,unknown>
Defined in: knex-repository.ts:130
Renames the keys of a data payload from entity field names to column names.
Parameters
Section titled “Parameters”Record<string, unknown>
Returns
Section titled “Returns”Record<string, unknown>
mapRowToEntity()
Section titled “mapRowToEntity()”
protectedmapRowToEntity(row):T
Defined in: knex-repository.ts:135
Renames the keys of a returned row from column names to entity field names.
Parameters
Section titled “Parameters”Record<string, unknown>
Returns
Section titled “Returns”T
patchById()
Section titled “patchById()”patchById(
id,data):Promise<T>
Defined in: knex-repository.ts:243
Parameters
Section titled “Parameters”D
Returns
Section titled “Returns”Promise<T>
Implementation of
Section titled “Implementation of”save()
Section titled “save()”save(
data):Promise<T>
Defined in: knex-repository.ts:175
Parameters
Section titled “Parameters”D
Returns
Section titled “Returns”Promise<T>
Implementation of
Section titled “Implementation of”saveAll()
Section titled “saveAll()”saveAll(
data):Promise<T[]>
Defined in: knex-repository.ts:192
Parameters
Section titled “Parameters”D[]
Returns
Section titled “Returns”Promise<T[]>
Implementation of
Section titled “Implementation of”toColumn()
Section titled “toColumn()”
protectedtoColumn(field):string
Defined in: knex-repository.ts:117
Translates an entity field name to its column name (fieldMap override, then columnCase convention).
Parameters
Section titled “Parameters”string
Returns
Section titled “Returns”string
toEntityField()
Section titled “toEntityField()”
protectedtoEntityField(column):string
Defined in: knex-repository.ts:123
Translates a column name back to its entity field name — the inverse of toColumn.
Parameters
Section titled “Parameters”column
Section titled “column”string
Returns
Section titled “Returns”string
updateById()
Section titled “updateById()”updateById(
id,data):Promise<T>
Defined in: knex-repository.ts:217
Parameters
Section titled “Parameters”D
Returns
Section titled “Returns”Promise<T>
Implementation of
Section titled “Implementation of”withTransaction()
Section titled “withTransaction()”withTransaction<
R>(callback):Promise<R>
Defined in: knex-repository.ts:69
Run a set of repository operations inside a single database transaction. The callback receives a transaction-scoped copy of this repository.
Type Parameters
Section titled “Type Parameters”R
Parameters
Section titled “Parameters”callback
Section titled “callback”(repo) => Promise<R>
Returns
Section titled “Returns”Promise<R>
wrapError()
Section titled “wrapError()”
protectedwrapError(err):Error
Defined in: knex-repository.ts:313
Parameters
Section titled “Parameters”unknown
Returns
Section titled “Returns”Error