UNPKG

@coko/server

Version:

Reusable server for use by Coko's projects

48 lines 2.57 kB
import { PartialModelObject, Pojo, RelationMappings } from 'objection'; import BaseModel, { TrxOption, TrxAndRelatedOptions } from '../base.model'; import Identity from '../identity/identity.model'; import Team from '../team/team.model'; declare class User extends BaseModel { agreedTc: boolean; givenNames: string; invitationToken: string; invitationTokenTimestamp: Date; isActive: boolean; password: string; passwordHash: string; passwordResetTimestamp: Date; passwordResetToken: string; surname: string; titlePost: string; titlePre: string; username: string; defaultIdentity: Identity; identities: Identity[]; teams: Team[]; constructor(); static get tableName(): string; static get schema(): object; static get relationMappings(): RelationMappings; patch(data: PartialModelObject<this>, options?: TrxOption): Promise<this>; static patchAndFetchById<T extends BaseModel>(this: new () => T, id: string, data: PartialModelObject<T>, options?: TrxAndRelatedOptions): Promise<T>; update(data: PartialModelObject<this>, options?: TrxOption): Promise<this>; static updateAndFetchById<T extends BaseModel>(this: new () => T, id: string, data: PartialModelObject<T>, options?: TrxAndRelatedOptions): Promise<T>; static hasGlobalRole(userId: string, role: string, options?: TrxOption): Promise<boolean>; hasGlobalRole(role: string, options?: TrxOption): Promise<boolean>; static hasRoleOnObject(userId: string, role: string, objectId: string, options?: TrxOption): Promise<boolean>; hasRoleOnObject(role: string, objectId: string, options?: TrxOption): Promise<boolean>; static getTeams(userId: string, options?: TrxOption): Promise<Team[]>; getTeams(): Promise<Team[]>; static updatePassword(userId: string, currentPassword: string, newPassword: string, passwordResetToken?: string, options?: TrxOption): Promise<User>; updatePassword(currentPassword: string, newPassword: string, passwordResetToken: string, options?: TrxOption): Promise<User>; $formatJson(json: Pojo): Pojo; static hashPassword(plaintext: string): Promise<string>; hashPassword(plaintext: string): Promise<void>; $beforeInsert(): Promise<void>; $beforeUpdate(): Promise<void>; isPasswordValid(plaintext: string): Promise<boolean>; static activateUsers(ids: string[], options?: TrxOption): Promise<User[]>; static deactivateUsers(ids: string[], options?: TrxOption): Promise<User[]>; } export default User; //# sourceMappingURL=user.model.d.ts.map