Model
Abstract Class: Model
Defined in: packages/models/src/model.model.ts:112
Model object definition
This is the core of many application
Extends
(Anonymous class)<ObjectConstructor,this> &Object
Extended by
Implements
Constructors
Constructor
new Model(
value?):Model
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:156
Parameters
value?
any
Returns
Model
Inherited from
RepositoryStorageClassMixIn(Object).constructor
Properties
[WEBDA_EVENTS]?
optional[WEBDA_EVENTS]?:ModelEvents<Model>
Defined in: packages/models/src/model.model.ts:141
Model events
Implementation of
[WEBDA_PRIMARY_KEY]
abstract[WEBDA_PRIMARY_KEY]: readonly keyofModel[]
Defined in: packages/models/src/model.model.ts:154
Non-abstract class need to define their PrimaryKey
Implementation of
[WEBDA_STORAGE]
protected[WEBDA_STORAGE]:Record<string,any> ={}
Defined in: packages/models/src/model.model.ts:146
Internal backing store for morpher-generated accessor properties. Populated automatically when getter/setter pairs are generated at build time.
constructor
constructor:
Function
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:125
The initial value of Object.prototype.constructor is the standard built-in Object constructor.
Inherited from
RepositoryStorageClassMixIn(Object).constructor
DefaultDeserializer
staticDefaultDeserializer:object
Defined in: packages/models/src/model.model.ts:340
Built-in deserializer helpers for common types
Date
Date: (
value) =>Date
Parameters
value
string | number | Date | undefined
Returns
Date
Methods
delete()
delete():
Promise<void>
Defined in: packages/models/src/model.model.ts:405
Delete a model
Returns
Promise<void>
a promise resolving when deleted (void)
emit()
protectedemit<T>(event,payload):Promise<void>
Defined in: packages/models/src/model.model.ts:322
Helper to emit events from the class
Type Parameters
T
T extends never
Parameters
event
T
the event name to emit
payload
ModelEvents<Model> | undefined[T]
the event data
Returns
Promise<void>
getPrimaryKey()
getPrimaryKey<
K>(this):PrimaryKeyType<Model>
Defined in: packages/models/src/model.model.ts:161
K is inferred as the literal tuple type of this.keyFields,
so K[number] is the exact union of keys you wrote.
Type Parameters
K
K extends readonly keyof Model[]
Parameters
this
Model & object
Returns
PrimaryKeyType<Model>
the primary key value
Implementation of
getRepository()
getRepository():
Repository<ModelClass<Model>>
Defined in: packages/models/src/model.model.ts:217
Get the repository associated with this model class
Returns
Repository<ModelClass<Model>>
the repository
getUUID()
getUUID():
string
Defined in: packages/models/src/model.model.ts:181
Return the string representation of the primary key
Returns
string
the string UID
Implementation of
hasOwnProperty()
hasOwnProperty(
v):boolean
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:140
Determines whether an object has a property with the specified name.
Parameters
v
PropertyKey
A property name.
Returns
boolean
Inherited from
RepositoryStorageClassMixIn(Object).hasOwnProperty
isDeleted()
isDeleted():
any
Defined in: packages/models/src/model.model.ts:397
Check whether this model instance has been soft-deleted
Returns
any
true if soft-deleted
isPrototypeOf()
isPrototypeOf(
v):boolean
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:146
Determines whether an object exists in another object's prototype chain.
Parameters
v
Object
Another object whose prototype chain is to be checked.
Returns
boolean
Inherited from
RepositoryStorageClassMixIn(Object).isPrototypeOf
load()
load(
params):this
Defined in: packages/models/src/model.model.ts:387
Allow to load from Storage, Dto and helper formats
Parameters
params
LoadParameters<this>
the data to load
Returns
this
the model instance
Implementation of
patch()
patch(
data):Promise<Model>
Defined in: packages/models/src/model.model.ts:417
Patch the object
Parameters
data
Partial<SelfJSONed<this>>
the partial data to patch with
Returns
Promise<Model>
the patched model instance
propertyIsEnumerable()
propertyIsEnumerable(
v):boolean
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:152
Determines whether a specified property is enumerable.
Parameters
v
PropertyKey
A property name.
Returns
boolean
Inherited from
RepositoryStorageClassMixIn(Object).propertyIsEnumerable
ref()
ref():
ModelRef<Model>
Defined in: packages/models/src/model.model.ts:189
Get a reference to this model instance in its repository
Returns
ModelRef<Model>
a model reference
refresh()
refresh():
Promise<Model>
Defined in: packages/models/src/model.model.ts:293
Reload the model from the repository, updating all properties in-place
Returns
Promise<Model>
the refreshed model instance
save()
save():
Promise<Model>
Defined in: packages/models/src/model.model.ts:304
Save the model to the repository
Returns
Promise<Model>
the saved model instance
setPrimaryKey()
setPrimaryKey<
K>(this,value):this
Defined in: packages/models/src/model.model.ts:199
Set the primary key of the model
Type Parameters
K
K extends readonly keyof Model[]
Parameters
this
Model & object
the model instance
value
PK<Model, K[number]>
the primary key value to set
Returns
this
the model instance
toDTO()
toDTO():
object
Defined in: packages/models/src/model.model.ts:274
Public representation of the model: its JSON form without __-prefixed
(server-only) keys, at any depth. Dates are serialized as strings.
Implemented as a JSON.parse(JSON.stringify(this)) round-trip, so circular
references throw, BigInt throws and Buffers become { type: "Buffer", data }.
A model with such fields must override toDTO.
Returns
object
the DTO
constructor
constructor:
object
constructor.apply
apply:
object
constructor.arguments
arguments:
any
constructor.bind
bind:
object
constructor.call
call:
object
constructor.caller
caller: { toString: {}; apply: {}; call: {}; bind: {}; prototype: any; arguments: any; caller: ...; }
constructor.prototype
prototype:
any
constructor.toString
toString:
object
delete
delete:
object
getPrimaryKey
getPrimaryKey:
object
getRepository
getRepository:
object
getUUID
getUUID:
object
hasOwnProperty
hasOwnProperty:
object
isDeleted
isDeleted:
object
isPrototypeOf
isPrototypeOf:
object
load
load:
object
patch
patch:
object
propertyIsEnumerable
propertyIsEnumerable:
object
ref
ref:
object
refresh
refresh:
object
save
save:
object
setPrimaryKey
setPrimaryKey:
object
toDTO
toDTO:
object
toJSON
toJSON:
object
toLocaleString
toLocaleString:
object
toProxy
toProxy:
object
toString
toString:
object
valueOf
valueOf:
object
toJSON()
toJSON():
this
Defined in: packages/models/src/model.model.ts:261
Serialize the model to JSON.
Uses for...in to include both own enumerable properties (regular class fields)
and inherited enumerable prototype getters generated by the morpher for coercible
fields (e.g. Date). Symbol-keyed internals and methods are excluded automatically.
Returns
this
the model instance
toLocaleString()
toLocaleString():
string
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:131
Returns a date converted to a string using the current locale.
Returns
string
Inherited from
RepositoryStorageClassMixIn(Object).toLocaleString
toProxy()
toProxy():
Model
Defined in: packages/models/src/repositories/hooks.ts:132
Return the proxied version of this model (identity by default)
Returns
Model
this instance
Inherited from
RepositoryStorageClassMixIn(Object).toProxy
toString()
toString():
string
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:128
Returns a string representation of an object.
Returns
string
Inherited from
RepositoryStorageClassMixIn(Object).toString
valueOf()
valueOf():
Object
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:134
Returns the primitive value of the specified object.
Returns
Object
Inherited from
RepositoryStorageClassMixIn(Object).valueOf
assign()
Call Signature
staticassign<T,U>(target,source):T&U
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.core.d.ts:286
Copy the values of all of the enumerable own properties from one or more source objects to a target object. Returns the target object.
Type Parameters
T
T extends object
U
U
Parameters
target
T
The target object to copy to.
source
U
The source object from which to copy properties.
Returns
T & U
Inherited from
RepositoryStorageClassMixIn(Object).assign
Call Signature
staticassign<T,U,V>(target,source1,source2):T&U&V
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.core.d.ts:295
Copy the values of all of the enumerable own properties from one or more source objects to a target object. Returns the target object.
Type Parameters
T
T extends object
U
U
V
V
Parameters
target
T
The target object to copy to.
source1
U
The first source object from which to copy properties.
source2
V
The second source object from which to copy properties.
Returns
T & U & V
Inherited from
RepositoryStorageClassMixIn(Object).assign
Call Signature
staticassign<T,U,V,W>(target,source1,source2,source3):T&U&V&W
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.core.d.ts:305
Copy the values of all of the enumerable own properties from one or more source objects to a target object. Returns the target object.
Type Parameters
T
T extends object
U
U
V
V
W
W
Parameters
target
T
The target object to copy to.
source1
U
The first source object from which to copy properties.
source2
V
The second source object from which to copy properties.
source3
W
The third source object from which to copy properties.
Returns
T & U & V & W
Inherited from
RepositoryStorageClassMixIn(Object).assign
Call Signature
staticassign(target, ...sources):any
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.core.d.ts:313
Copy the values of all of the enumerable own properties from one or more source objects to a target object. Returns the target object.
Parameters
target
object
The target object to copy to.
sources
...any[]
One or more source objects from which to copy properties
Returns
any
Inherited from
RepositoryStorageClassMixIn(Object).assign
canAct()
staticcanAct(context,action,object?):CanActResult
Defined in: packages/models/src/model.model.ts:131
The one permission entry point the framework asks before running an operation a client sent
object is the loaded object for an operation on an object (get, update, patch, delete, actions, behavior
actions, each query row), the new unsaved object for a create, and undefined for a static (class-level)
action.
This base implementation delegates to the instance method canAct(context, action) when object defines
one (a subclass overrode it), and denies in every other case: no instance method, or no object. A model is
therefore refused on every transport until it defines one of the two forms. Override the static method to
control static actions, creation rules or class-level policy; it may call super.canAct(context, action, object) to keep the instance check for objects. Opt into open access with static canAct() { return true; }.
Parameters
context
the caller context
action
string
the action name ("get", "create", "update", "delete", an action name, "attribute.action")
object?
any
the object the action targets, if any
Returns
true when allowed, otherwise a refusal (a reason string or false)
create()
Call Signature
staticcreate<T>(this,data,save?):Promise<InstanceType<T>>
Defined in: packages/models/src/repositories/hooks.ts:67
Create the object directly
Type Parameters
T
T extends ModelClass<Storable<any, any>>
Parameters
this
T
the model class constructor
data
Helpers<InstanceType<T>>
the initial data
save?
boolean = true
whether to persist immediately
Returns
Promise<InstanceType<T>>
the created model instance
Inherited from
RepositoryStorageClassMixIn(Object).create
Call Signature
staticcreate(o):any
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:188
Creates an object that has the specified prototype or that has null prototype.
Parameters
o
object | null
Object to use as a prototype. May be null.
Returns
any
Inherited from
RepositoryStorageClassMixIn(Object).create
Call Signature
staticcreate(o,properties):any
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:195
Creates an object that has the specified prototype, and that optionally contains specified properties.
Parameters
o
object | null
Object to use as a prototype. May be null
properties
PropertyDescriptorMap & ThisType<any>
JavaScript object that contains one or more property descriptors.
Returns
any
Inherited from
RepositoryStorageClassMixIn(Object).create
defineProperties()
staticdefineProperties<T>(o,properties):T
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:210
Adds one or more properties to an object, and/or modifies attributes of existing properties.
Type Parameters
T
T
Parameters
o
T
Object on which to add or modify the properties. This can be a native JavaScript object or a DOM object.
properties
PropertyDescriptorMap & ThisType<any>
JavaScript object that contains one or more descriptor objects. Each descriptor object describes a data property or an accessor property.
Returns
T
Inherited from
RepositoryStorageClassMixIn(Object).defineProperties
defineProperty()
staticdefineProperty<T>(o,p,attributes):T
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:203
Adds a property to an object, or modifies attributes of an existing property.
Type Parameters
T
T
Parameters
o
T
Object on which to add or modify the property. This can be a native JavaScript object (that is, a user-defined object or a built in object) or a DOM object.
p
PropertyKey
The property name.
attributes
PropertyDescriptor & ThisType<any>
Descriptor for the property. It can be for a data property or an accessor property.
Returns
T
Inherited from
RepositoryStorageClassMixIn(Object).defineProperty
deserialize()
staticdeserialize<T,K>(this,data,instance?):K
Defined in: packages/models/src/model.model.ts:351
Deserialize the model
Type Parameters
T
T extends ModelClass<Storable<any, any>>
K
K extends object = InstanceType<T>
Parameters
this
T
the model class constructor
data
any
the raw data to deserialize
instance?
K
optional existing instance to populate
Returns
K
the deserialized model instance
entries()
Call Signature
staticentries<T>(o): [string,T][]
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.object.d.ts:36
Returns an array of key/values of the enumerable own properties of an object
Type Parameters
T
T
Parameters
o
{[s: string]: T; } | ArrayLike<T>
Object that contains the properties and methods. This can be an object that you created or an existing Document Object Model (DOM) object.
Returns
[string, T][]
Inherited from
RepositoryStorageClassMixIn(Object).entries
Call Signature
staticentries(o): [string,any][]
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.object.d.ts:42
Returns an array of key/values of the enumerable own properties of an object
Parameters
o
Object that contains the properties and methods. This can be an object that you created or an existing Document Object Model (DOM) object.
Returns
[string, any][]
Inherited from
RepositoryStorageClassMixIn(Object).entries
freeze()
Call Signature
staticfreeze<T>(f):T
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:222
Prevents the modification of existing property attributes and values, and prevents the addition of new properties.
Type Parameters
T
T extends Function
Parameters
f
T
Object on which to lock the attributes.
Returns
T
Inherited from
RepositoryStorageClassMixIn(Object).freeze
Call Signature
staticfreeze<T,U>(o):Readonly<T>
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:228
Prevents the modification of existing property attributes and values, and prevents the addition of new properties.
Type Parameters
T
T extends object
U
U extends string | number | bigint | boolean | symbol
Parameters
o
T
Object on which to lock the attributes.
Returns
Readonly<T>
Inherited from
RepositoryStorageClassMixIn(Object).freeze
Call Signature
staticfreeze<T>(o):Readonly<T>
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:234
Prevents the modification of existing property attributes and values, and prevents the addition of new properties.
Type Parameters
T
T
Parameters
o
T
Object on which to lock the attributes.
Returns
Readonly<T>
Inherited from
RepositoryStorageClassMixIn(Object).freeze
fromEntries()
Call Signature
staticfromEntries<T>(entries):object
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.object.d.ts:26
Returns an object created by key-value entries for properties and methods
Type Parameters
T
T = any
Parameters
entries
Iterable<readonly [PropertyKey, T]>
An iterable object that contains key-value entries for properties and methods.
Returns
object
Inherited from
RepositoryStorageClassMixIn(Object).fromEntries
Call Signature
staticfromEntries(entries):any
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2019.object.d.ts:32
Returns an object created by key-value entries for properties and methods
Parameters
entries
Iterable<readonly any[]>
An iterable object that contains key-value entries for properties and methods.
Returns
any
Inherited from
RepositoryStorageClassMixIn(Object).fromEntries
getDeserializers()
staticgetDeserializers<T>(this):Partial<Record<keyofInstanceType<T>, (value) =>any>> |undefined
Defined in: packages/models/src/model.model.ts:333
Custom deserializers for the model
Type Parameters
T
T extends ModelClass<Storable<any, any>>
Parameters
this
T
Returns
Partial<Record<keyof InstanceType<T>, (value) => any>> | undefined
a map of field deserializers, or undefined
getOwnPropertyDescriptor()
staticgetOwnPropertyDescriptor(o,p):PropertyDescriptor|undefined
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:175
Gets the own property descriptor of the specified object. An own property descriptor is one that is defined directly on the object and is not inherited from the object's prototype.
Parameters
o
any
Object that contains the property.
p
PropertyKey
Name of the property.
Returns
PropertyDescriptor | undefined
Inherited from
RepositoryStorageClassMixIn(Object).getOwnPropertyDescriptor
getOwnPropertyDescriptors()
staticgetOwnPropertyDescriptors<T>(o): { [P in string | number | symbol]: TypedPropertyDescriptor<T[P]> } &object
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.object.d.ts:48
Returns an object containing all own property descriptors of an object
Type Parameters
T
T
Parameters
o
T
Object that contains the properties and methods. This can be an object that you created or an existing Document Object Model (DOM) object.
Returns
{ [P in string | number | symbol]: TypedPropertyDescriptor<T[P]> } & object
Inherited from
RepositoryStorageClassMixIn(Object).getOwnPropertyDescriptors
getOwnPropertyNames()
staticgetOwnPropertyNames(o):string[]
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:182
Returns the names of the own properties of an object. The own properties of an object are those that are defined directly on that object, and are not inherited from the object's prototype. The properties of an object include both fields (objects) and functions.
Parameters
o
any
Object that contains the own properties.
Returns
string[]
Inherited from
RepositoryStorageClassMixIn(Object).getOwnPropertyNames
getOwnPropertySymbols()
staticgetOwnPropertySymbols(o):symbol[]
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.core.d.ts:319
Returns an array of all symbol properties found directly on object o.
Parameters
o
any
Object to retrieve the symbols from.
Returns
symbol[]
Inherited from
RepositoryStorageClassMixIn(Object).getOwnPropertySymbols
getPrototypeOf()
staticgetPrototypeOf(o):any
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:167
Returns the prototype of an object.
Parameters
o
any
The object that references the prototype.
Returns
any
Inherited from
RepositoryStorageClassMixIn(Object).getPrototypeOf
getRepository()
staticgetRepository<T>(this):Repository<T>
Defined in: packages/models/src/repositories/hooks.ts:56
Get the repository registered for this model class.
Type Parameters
T
T extends ModelClass<Storable<any, any>>
Parameters
this
T
Returns
Repository<T>
the repository
Inherited from
RepositoryStorageClassMixIn(Object).getRepository
groupBy()
staticgroupBy<K,T>(items,keySelector):Partial<Record<K,T[]>>
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2024.object.d.ts:25
Groups members of an iterable according to the return value of the passed callback.
Type Parameters
K
K extends PropertyKey
T
T
Parameters
items
Iterable<T>
An iterable.
keySelector
(item, index) => K
A callback which will be invoked for each item in items.
Returns
Partial<Record<K, T[]>>
Inherited from
RepositoryStorageClassMixIn(Object).groupBy
hasOwn()
statichasOwn(o,v):boolean
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2022.object.d.ts:25
Determines whether an object has a property with the specified name.
Parameters
o
object
An object.
v
PropertyKey
A property name.
Returns
boolean
Inherited from
RepositoryStorageClassMixIn(Object).hasOwn
is()
staticis(value1,value2):boolean
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.core.d.ts:332
Returns true if the values are the same value, false otherwise.
Parameters
value1
any
The first value.
value2
any
The second value.
Returns
boolean
Inherited from
RepositoryStorageClassMixIn(Object).is
isExtensible()
staticisExtensible(o):boolean
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:258
Returns a value that indicates whether new properties can be added to an object.
Parameters
o
any
Object to test.
Returns
boolean
Inherited from
RepositoryStorageClassMixIn(Object).isExtensible
isFrozen()
staticisFrozen(o):boolean
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:252
Returns true if existing property attributes and values cannot be modified in an object, and new properties cannot be added to the object.
Parameters
o
any
Object to test.
Returns
boolean
Inherited from
RepositoryStorageClassMixIn(Object).isFrozen
isSealed()
staticisSealed(o):boolean
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:246
Returns true if existing property attributes cannot be modified in an object and new properties cannot be added to the object.
Parameters
o
any
Object to test.
Returns
boolean
Inherited from
RepositoryStorageClassMixIn(Object).isSealed
iterate()
staticiterate<T>(this,query,params?):AsyncGenerator<InstanceType<T>,any,any>
Defined in: packages/models/src/repositories/hooks.ts:105
Iterate through all objects
Type Parameters
T
T extends ModelClass<Storable<any, any>>
Parameters
this
T
the model class constructor
query
WebdaQLString<InstanceType<T>>
the query string, optionally with ? or :name placeholders
params?
QueryParameters
values for the placeholders: an array for ?, an object for :name
Returns
AsyncGenerator<InstanceType<T>, any, any>
an async generator of model instances
Inherited from
RepositoryStorageClassMixIn(Object).iterate
keys()
Call Signature
statickeys(o):string[]
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:264
Returns the names of the enumerable string properties and methods of an object.
Parameters
o
object
Object that contains the properties and methods. This can be an object that you created or an existing Document Object Model (DOM) object.
Returns
string[]
Inherited from
RepositoryStorageClassMixIn(Object).keys
Call Signature
statickeys(o):string[]
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.core.d.ts:325
Returns the names of the enumerable string properties and methods of an object.
Parameters
o
Object that contains the properties and methods. This can be an object that you created or an existing Document Object Model (DOM) object.
Returns
string[]
Inherited from
RepositoryStorageClassMixIn(Object).keys
preventExtensions()
staticpreventExtensions<T>(o):T
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:240
Prevents the addition of new properties to an object.
Type Parameters
T
T
Parameters
o
T
Object to make non-extensible.
Returns
T
Inherited from
RepositoryStorageClassMixIn(Object).preventExtensions
query()
staticquery<T>(this,query,params?):Promise<{continuationToken?:string;results:InstanceType<T>[]; }>
Defined in: packages/models/src/repositories/hooks.ts:87
Query the object directly
Task.query("owner = ? AND priority >= ?", [user, 2]);
Task.query("owner = :owner", { owner: user });
Type Parameters
T
T extends ModelClass<Storable<any, any>>
Parameters
this
T
the model class constructor
query
WebdaQLString<InstanceType<T>>
the query string, optionally with ? or :name placeholders
params?
QueryParameters
values for the placeholders: an array for ?, an object for :name
Returns
Promise<{ continuationToken?: string; results: InstanceType<T>[]; }>
the query results
Inherited from
RepositoryStorageClassMixIn(Object).query
ref()
staticref<T>(this,key):ModelRefWithCreate<InstanceType<T>>
Defined in: packages/models/src/repositories/hooks.ts:121
Get a reference to the model
Type Parameters
T
T extends ModelClass<Storable<any, any>>
Parameters
this
T
the model class constructor
key
SettablePrimaryKey<InstanceType<T>>
the primary key value
Returns
ModelRefWithCreate<InstanceType<T>>
a model reference with create capability
Inherited from
RepositoryStorageClassMixIn(Object).ref
registerSerializer()
staticregisterSerializer<T>(this,overwrite?,identifier?):void
Defined in: packages/models/src/model.model.ts:231
Register Model custom serializer
Type Parameters
T
T extends ModelClass<Storable<any, any>>
Parameters
this
T & object
the model class constructor
overwrite?
boolean = true
whether to overwrite an existing serializer
identifier?
string
fully-qualified model identifier (e.g. WebdaSample/User)
used to namespace the serializer key when multiple classes share the same
JS constructor name. Defaults to the constructor's own name.
TODO Might want to move to deserialize static function
Returns
void
seal()
staticseal<T>(o):T
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es5.d.ts:216
Prevents the modification of attributes of existing properties, and prevents the addition of new properties.
Type Parameters
T
T
Parameters
o
T
Object on which to lock the attributes.
Returns
T
Inherited from
RepositoryStorageClassMixIn(Object).seal
setPrototypeOf()
staticsetPrototypeOf(o,proto):any
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2015.core.d.ts:339
Sets the prototype of a specified object o to object proto or null. Returns the object o.
Parameters
o
any
The object to change its prototype.
proto
object | null
The value of the new prototype or null.
Returns
any
Inherited from
RepositoryStorageClassMixIn(Object).setPrototypeOf
values()
Call Signature
staticvalues<T>(o):T[]
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.object.d.ts:24
Returns an array of values of the enumerable own properties of an object
Type Parameters
T
T
Parameters
o
{[s: string]: T; } | ArrayLike<T>
Object that contains the properties and methods. This can be an object that you created or an existing Document Object Model (DOM) object.
Returns
T[]
Inherited from
RepositoryStorageClassMixIn(Object).values
Call Signature
staticvalues(o):any[]
Defined in: node_modules/.pnpm/typescript@5.9.3/node_modules/typescript/lib/lib.es2017.object.d.ts:30
Returns an array of values of the enumerable own properties of an object
Parameters
o
Object that contains the properties and methods. This can be an object that you created or an existing Document Object Model (DOM) object.
Returns
any[]
Inherited from
RepositoryStorageClassMixIn(Object).values