import { Observable } from 'rxjs'; import { HttpContext, HttpHeaders, HttpParams } from '@angular/common/http'; import { ConfigurationService } from './configuration.service'; import { ApolloProvider } from './communication-providers/apollo.provider'; import { RestProvider } from './communication-providers/rest.provider'; import * as i0 from "@angular/core"; export type CommunicationQueryParams = HttpParams | { [param: string]: string | number | boolean | ReadonlyArray; }; export type CommunicationHttpOptions = { body?: any; context?: HttpContext; responseType?: 'arraybuffer' | 'blob' | 'json' | 'text'; withCredentials?: boolean; params?: CommunicationQueryParams; headers?: HttpHeaders | { [header: string]: string | string[]; }; }; export type CommunicationOptions = { method?: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'; params?: U; urlParams?: string | object; queryParams?: CommunicationQueryParams; httpOptions?: CommunicationHttpOptions; onError?: (err: any) => void; }; export declare class CommunicationService { private config; private apollo; private rest; private defaultProvider; private communicationConfig; constructor(config: ConfigurationService, apollo: ApolloProvider, rest: RestProvider); request$(requestId: string, options?: CommunicationOptions, provider?: string): Observable; handleError(error: any, onError: (err: any) => void): Observable; getUrl(requestId?: any, provider?: any): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }