import { Model } from 'sequelize-typescript'; import dfw_session from './dfw_session.model'; import dfw_credential from './dfw_credential.model'; import dfw_access from './dfw_access.model'; import { Transaction } from 'sequelize/types'; export default class dfw_user extends Model { id: number; nick: string; email: string; encodedKey: string; created_at: Date; updated_at: Date; sessionsOwned: dfw_session[]; credentials: dfw_credential[]; /** * * @param password plain password to check * @returns Boolean true or false if the password match with the encripted password */ checkPassword(password: string): boolean; /** * * @param access */ checkAccessAsync(access: string | string[] | number | number[] | dfw_access | dfw_access[]): Promise; checkCredentialAsync(credential: string | string[] | number | number[] | dfw_credential | dfw_credential[]): Promise; assignCredentialAsync(credential: string | string[] | number | number[] | dfw_credential | dfw_credential[], transaction?: Transaction): Promise; removeCredentialAsync(credential: string | string[] | number | number[] | dfw_credential | dfw_credential[], transaction?: Transaction): Promise; }