UNPKG

darkbasic-accounts-typeorm

Version:
50 lines (49 loc) 3.1 kB
import { ConnectionInformations, CreateUser, DatabaseInterface } from '@accounts/types'; import { Connection } from 'typeorm'; import { User } from './entity/User'; import { UserEmail } from './entity/UserEmail'; import { UserService } from './entity/UserService'; import { UserSession } from './entity/UserSession'; import { AccountsTypeormOptions } from './types'; export declare class AccountsTypeorm implements DatabaseInterface { private options; private connection?; private UserEntity; private UserEmailEntity; private UserServiceEntity; private UserSessionEntity; private userRepository; private emailRepository; private serviceRepository; private sessionRepository; constructor(options: AccountsTypeormOptions, connection?: Connection | undefined, UserEntity?: typeof User, UserEmailEntity?: typeof UserEmail, UserServiceEntity?: typeof UserService, UserSessionEntity?: typeof UserSession); findUserByEmail(email: string): Promise<User | null>; findUserByUsername(username: string): Promise<User | null>; findUserById(userId: string): Promise<User | null>; findUserByResetPasswordToken(token: string): Promise<User | null>; findUserByEmailVerificationToken(token: string): Promise<User | null>; createUser(createUser: CreateUser): Promise<string>; setUsername(userId: string, newUsername: string): Promise<void>; findUserByServiceId(serviceName: string, serviceId: string): Promise<User | null>; getService(userId: string, serviceName: string): Promise<UserService | null>; setService(userId: string, serviceName: string, data: object, token?: string): Promise<void>; unsetService(userId: string, serviceName: string): Promise<void>; findPasswordHash(userId: string): Promise<string | null>; setPassword(userId: string, newPassword: string): Promise<void>; addResetPasswordToken(userId: string, email: string, token: string, reason: string): Promise<void>; addEmail(userId: string, newEmail: string, verified: boolean): Promise<void>; removeEmail(userId: string, email: string): Promise<void>; verifyEmail(userId: string, email: string): Promise<void>; addEmailVerificationToken(userId: string, email: string, token: string): Promise<void>; removeAllResetPasswordTokens(userId: string): Promise<void>; setUserDeactivated(userId: string, deactivated: boolean): Promise<void>; findSessionById(sessionId: string): Promise<UserSession | null>; findSessionByToken(token: string): Promise<UserSession | null>; findUserByLoginToken(token: string): Promise<User | null>; addLoginToken(userId: string, email: string, token: string): Promise<void>; removeAllLoginTokens(userId: string): Promise<void>; createSession(userId: string, token: string, connection?: ConnectionInformations, extra?: object): Promise<string>; updateSession(sessionId: string, connection: ConnectionInformations): Promise<void>; invalidateSession(sessionId: string): Promise<void>; invalidateAllSessions(userId: string, excludedSessionIds?: string[]): Promise<void>; }