import type { DatabaseSync } from "node:sqlite"; import type { CreateUserInput, UpdateUserInput, UserWithConnectorKeysDbRecord } from "./databaseTypes.js"; /** * Users repository backed by SQLite with write-through caching. * Expects: schema migrations already applied for users and user_connector_keys. */ export declare class UsersRepository { private readonly db; private readonly usersById; private readonly userIdByConnectorKey; private readonly userIdByNametag; private readonly userLocks; private readonly cacheLock; private readonly createLock; private allUsersLoaded; constructor(db: DatabaseSync); findById(id: string): Promise; findByConnectorKey(key: string): Promise; findByNametag(nametag: string): Promise; findMany(): Promise; findOwner(): Promise; create(input: CreateUserInput): Promise; update(id: string, data: UpdateUserInput): Promise; delete(id: string): Promise; findByParentUserId(parentUserId: string): Promise; addConnectorKey(userId: string, connectorKey: string): Promise; private userLockForId; private userLoadById; private userCacheSet; } //# sourceMappingURL=usersRepository.d.ts.map