import { IUseCase } from './base/IUseCase'; import { UserEntity } from '../entity/UserEntity'; import UsersRepository from '../../Data/repository/UsersRepository'; export class GetUsersByIdsUseCase implements IUseCase> { private usersRepository: UsersRepository; private userIds: Array; constructor(usersRepository: UsersRepository, userIds: Array) { this.usersRepository = usersRepository; this.userIds = userIds; } execute(): Promise> { if (this.userIds.length > 0) { return this.usersRepository.getUsersFromRemote(this.userIds); }else { return this.usersRepository.getUsersFromLocal(this.userIds); } } }