/* eslint-disable prettier/prettier */
/* eslint-disable @typescript-eslint/no-inferrable-types */ 

import { Observable } from "rxjs";

export abstract class QueryClient{

  protected isCacheOn: boolean = false;
  
  sendQuery(queryString:string):Observable<any> {
    let queryObservable: Observable<any>;

    if(this.isCacheOn){
        // client implement
        // queryObservable = ....(queryString)
    }
    else{
        // client implement
        // queryObservable = ....(queryString)
    }

    return queryObservable;
  }

  setCacheOn(){
    this.isCacheOn = true;
  }

  setCacheOff(){
    this.isCacheOn = false;
  }
}

 