import { Http } from '@angular/http'; import { Observable } from 'rxjs/Observable'; import { Report } from '../models/report'; import 'rxjs/add/operator/map'; import 'rxjs/add/operator/do'; export declare class ReportsListServiceConfig { WebAPIServiceUrl: string; BearerToken?: string; } /** * Injectable sevice providing a list of available reports in the workspace. * * @export * @class ReportsListService */ export declare class ReportsListService { private _http; private _config; private _reports; /** * Gets or set the service url base for the reports list service. * * @type {string}@memberof ReportsListService */ ServiceUrl: string; /** * Creates an instance of ReportsListService. * @param {Http} _http - Instance of the http service. * @param {string} _serviceUrl - String containing the service Url of the web api providing a list of available * reports with access tokens. * @param {string} _bearerToken - OAuth token to use to access the web api (if secured). * @memberof ReportsListService */ constructor(_http: Http, _config: ReportsListServiceConfig); /** * Gets the available reports in the workspace including access tokens. * @param {*} alternateHttpProvider - Optional. You can provide an alternate http implementation as an argument. * This is mostly used for authenticating http providers such as ADAL that do not derive from http and can * therefore not easly be depdency injected as http implementations. * @param {boolean} allowCredentials - Set to true to allowCredentials when no bearer token exists. * Use false to prevent withCredentials. * @returns {Observable>} - An Observalbe containing the list of {@link Report} objects. * @memberof ReportsListService */ GetReports(alternateHttpProvider?: any, allowCredentials?: boolean): Observable>; /** * Obtains a new access token for a given report. * * @param {string} id - The report for which to obtain the acecss token. * @returns {Observable} - Observable containing the access token. * @memberof ReportsListService */ GetEmbedTokenForReport(id: string): Observable; }