import { HttpClient } from '@angular/common/http'; import { NgForageCache } from '@ngforage/ngforage-ng4'; import 'rxjs/add/operator/filter'; import 'rxjs/add/operator/map'; import 'rxjs/add/operator/switchMap'; import 'rxjs/add/operator/toPromise'; import { Observable } from 'rxjs/Observable'; import { FormattedPayload } from './Formatted'; import { ProxyURLFormatterFunction } from './ProxyURLFormatterFunction'; /** Fetches and formats the calendar via a CORS proxy */ export declare class CalendarFetcher { private readonly cache; private readonly fn; private readonly http; constructor(cache: NgForageCache, fn: ProxyURLFormatterFunction, http: HttpClient); /** * Fetch a user * @param user The username */ fetch(user: string): Observable; /** * Fetch a user * @param user The username * @param formatterFn A URL formatter function override */ fetch(user: string, formatterFn: ProxyURLFormatterFunction): Observable; /** * Fetch a user * @param user The username * @param toYear The cutoff year * @param toMonth The cutoff month * @param toDay The cutoff day */ fetch(user: string, toYear: string | number, toMonth: string, toDay: string): Observable; /** * Fetch a user * @param user The username * @param toYear The cutoff year * @param toMonth The cutoff month * @param toDay The cutoff day * @param formatterFn A URL formatter function override */ fetch(user: string, toYear: string | number, toMonth: string, toDay: string, formatterFn: ProxyURLFormatterFunction): Observable; }