import { Component, Inject, OnInit, Injectable } from '@angular/core';
import { Http, RequestOptions } from '@angular/http';
import { Headers } from '@angular/http';
import { Observable } from 'rxjs';
import { catchError, tap } from 'rxjs/operators';
// import { Hero } from './hero';
import { HttpErrorHandler, HandleError } from '../auth/http-error-handler.service';
import { AuthService } from '../auth/auth.service';
import { HttpClient, HttpParams } from '@angular/common/http';
import { HttpHeaders } from '@angular/common/http';
import { RequireInteractiveControl } from '../interface/Interactive Component/RequireInteractiveControl';
import { SyncResponseErrorHandleService } from '../route/SyncResponseErrorHandle';
import { BaseService } from 'ekangularbase/src/baseclass/BaseService';

@Injectable()
export class BaseServiceV2<T extends RequireInteractiveControl> extends BaseService<T> {
    // public apiUrl = '';
    // public objName = '';
    // public subUrl = '';

    constructor(
        public authService: AuthService,
        public httpErrorHandler: HttpErrorHandler,
        public http: HttpClient,
        public syncResponseErrorHandleService?: SyncResponseErrorHandleService) {
        super(authService, httpErrorHandler, http, '', '', '', syncResponseErrorHandleService);
    }

    // init() {
    //     this.baseu = this.apiUrl;
    //     this.objectname = this.objName;
    //     this.subrouteurl = this.subUrl;
    // }

}

