import { ServiceClassInternal, type ILDAPEEService } from '@rocket.chat/core-services'; import type { IUser } from '@rocket.chat/core-typings'; import { Users } from '@rocket.chat/models'; import type { FindCursor } from 'mongodb'; import { LDAPEEManager } from '../../lib/ldap/Manager'; export class LDAPEEService extends ServiceClassInternal implements ILDAPEEService { protected name = 'ldap-enterprise'; async sync(): Promise { return LDAPEEManager.sync(); } async syncAvatars(): Promise { return LDAPEEManager.syncAvatars(); } async syncAvatarAndAbacAttributes(): Promise { return LDAPEEManager.syncAvatarAndAbacAttributes(); } async syncLogout(): Promise { return LDAPEEManager.syncLogout(); } async syncAbacAttributes(): Promise { return LDAPEEManager.syncAbacAttributes(); } async syncUsersAbacAttributes(users: FindCursor): Promise { return LDAPEEManager.syncUsersAbacAttributes(users); } async syncUsersAbacAttributesByIds(userIds: string[]): Promise { return LDAPEEManager.syncUsersAbacAttributes(Users.findUsersByIdentifiers({ ids: userIds })); } }