import { HttpClient, HttpHeaders, HttpResponse, HttpEvent } from '@angular/common/http';
import { Observable } from 'rxjs';
import { VersionSummary } from '../model/versionSummary';
import { Configuration } from '../configuration';
export declare class ApplicationMetadataService {
    protected httpClient: HttpClient;
    protected basePath: string;
    defaultHeaders: HttpHeaders;
    configuration: Configuration;
    constructor(httpClient: HttpClient, basePath: string, configuration: Configuration);
    /**
     * @param consumes string[] mime-types
     * @return true: consumes contains 'multipart/form-data', false: otherwise
     */
    private canConsumeForm(consumes);
    /**
     * Download Excel Addin
     * Download the LUSID Excel Addin for Microsoft Excel. Not providing a specific value will return the latest version being returned
     * @param version The requested version of the Excel plugin
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    getExcelAddin(version?: string, observe?: 'body', reportProgress?: boolean): Observable<string>;
    getExcelAddin(version?: string, observe?: 'response', reportProgress?: boolean): Observable<HttpResponse<string>>;
    getExcelAddin(version?: string, observe?: 'events', reportProgress?: boolean): Observable<HttpEvent<string>>;
    /**
     * Get Excel download url
     * Request an authorised url for an Excel client version
     * @param version The requested version of the Excel plugin
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    getExcelDownloadUrl(version?: string, observe?: 'body', reportProgress?: boolean): Observable<string>;
    getExcelDownloadUrl(version?: string, observe?: 'response', reportProgress?: boolean): Observable<HttpResponse<string>>;
    getExcelDownloadUrl(version?: string, observe?: 'events', reportProgress?: boolean): Observable<HttpEvent<string>>;
    /**
     * Get LUSID versions
     * Get the semantic versions associated with LUSID and its ecosystem
     * @param observe set whether or not to return the data Observable as the body, response or events. defaults to returning the body.
     * @param reportProgress flag to report request and response progress.
     */
    getLusidVersions(observe?: 'body', reportProgress?: boolean): Observable<VersionSummary>;
    getLusidVersions(observe?: 'response', reportProgress?: boolean): Observable<HttpResponse<VersionSummary>>;
    getLusidVersions(observe?: 'events', reportProgress?: boolean): Observable<HttpEvent<VersionSummary>>;
}
