import { Injectable, Inject } from \'@angular/core\';
import { Subject } from \"rxjs/Subject\";
import { CompleterData, CompleterItem
You will have to add @Inject so that its dependency can be resolved.
So for custom services inside your service Inject its dependency with @Inject
In your code replace your custom services with
@Inject(ProgramService) private programService: ProgramService, @Inject(CacheService) private cacheService: CacheService,
You can understand it deeply from this blog. https://blog.thoughtram.io/angular/2015/09/17/resolve-service-dependencies-in-angular-2.html