Итак, в конце концов я нашел решение
Я изменил абстрактный BaseRepository в интерфейс:
export interface IBaseRepository<T> {
findById(id: string): Observable<T | null>;
}
и отредактировал BaseService для принятия:
export abstract class BaseService<T extends IBaseRepository<U>, U>
Где T - любой репозиторий, а U - любая модель.
export class UsersService extends BaseService<UsersInfosRepository, UserInfosModel>
надеюсь, это поможет всем, кто, как я, изо всех сил пытался найти решение, включающее дженерики и секвелиз.