UNPKG

mira-app-server

Version:

Mira Server - standalone server application using mira-app-core

62 lines 2.13 kB
export interface User { id: number; username: string; password: string; role: string; permissions: string[]; created_at: number; updated_at: number; is_active: boolean; email?: string; } export interface Session { token: string; user_id: number; created_at: number; expires_at: number; is_active: boolean; } export declare class UserStorage { private db; private dbPath; constructor(dataDir?: string); initialize(): Promise<void>; private createTables; private createDefaultAdmin; hashPassword(password: string): string; private verifyPassword; generateToken(userId: number): string; createUser(userData: Omit<User, 'id'>): Promise<number>; findUserByUsername(username: string): Promise<User | null>; findUserByUsernameIncludeInactive(username: string): Promise<User | null>; findUserById(id: number): Promise<User | null>; authenticateUser(username: string, password: string): Promise<User | null>; createSession(userId: number, tokenLifetime?: number): Promise<string>; validateSession(token: string): Promise<User | null>; revokeSession(token: string): Promise<boolean>; revokeAllUserSessions(userId: number): Promise<boolean>; cleanupExpiredSessions(): Promise<number>; private rowToUser; getUserInfo(user: User): { id: number; username: string; role: string; permissions: string[]; created_at: number; updated_at: number; is_active: boolean; email?: string; }; getAllUsers(): Promise<User[]>; updateUser(id: number, userData: Partial<Omit<User, 'id' | 'created_at'>>): Promise<boolean>; softDeleteUser(id: number): Promise<boolean>; hardDeleteUser(id: number): Promise<boolean>; deleteInactiveUsers(): Promise<number>; isUsernameExists(username: string, excludeId?: number): Promise<boolean>; getUsersWithPermission(permission: string): Promise<User[]>; private executeSql; private runSql; private getSql; close(): Promise<void>; } //# sourceMappingURL=UserStorage.d.ts.map