import type { User, Role } from './auth-types.js'; export interface UserStoreOptions { idFactory?: () => string; hashPassword?: (password: string) => string; verifyPassword?: (password: string, hash: string) => boolean; } export declare class UserStore { private readonly users; private readonly usernameIndex; private readonly idFactory; private readonly hashPassword; private readonly verifyPassword; constructor(options?: UserStoreOptions); createUser(username: string, password: string, role: Role, createdBy: string): User; authenticate(username: string, password: string): User | null; changePassword(userId: string, oldPassword: string, newPassword: string): boolean; updateRole(userId: string, role: Role): boolean; disableUser(userId: string): boolean; getUser(userId: string): User | null; getUserByUsername(username: string): User | null; listUsers(): User[]; } //# sourceMappingURL=user-store.d.ts.map