UNPKG

mira-app-server

Version:

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

72 lines 2.91 kB
export type { User } from './types'; import type { User } from './types'; export declare class UserStorage { private db; private dbPath; constructor(dataDir?: string); initialize(): Promise<void>; private createTables; /** 幂等加列:若表已存在但缺 col 列,则 ALTER TABLE ADD COLUMN。 */ private ensureColumn; private createDefaultAdmin; hashPassword(password: string): string; private verifyPassword; verifyPasswordDirect(password: string, hashedPassword: string): boolean; 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>; private rowToCookieSite; listCookieSites(userId: number): Promise<any[]>; createCookieSite(userId: number, data: { name: string; url: string; remark?: string; cookies?: any[]; label?: string; isDefault?: boolean; }): Promise<any>; updateCookieSite(userId: number, id: number, data: { name?: string; url?: string; remark?: string; cookies?: any[]; label?: string; isDefault?: boolean; }): Promise<any | null>; /** 把某用户某 url 下所有组 is_default 置 0,exceptId 对应的除外 */ private clearDefaultForUrl; /** 把指定组设为该站点的默认组(同 url 其他组自动取消) */ setDefaultCookieSite(userId: number, id: number): Promise<any | null>; deleteCookieSite(userId: number, id: number): Promise<boolean>; } //# sourceMappingURL=UserStorage.d.ts.map