import { FilterCategory } from './enlighten-lib/filters/filter-category';
import { HttpClient } from '@angular/common/http';
import { EventEmitter } from '@angular/core';
import { BehaviorSubject, Observable } from 'rxjs';
import { AxFilter } from './enlighten-lib/filters/ax-filter';
import { Page } from './enlighten-lib/report/graphical-report/page/page';
import { CommonLibConfigurationService } from './common-lib-configuration.service';
import * as i0 from "@angular/core";
export declare class CommonService {
    private _httpClient;
    private commonLibConfig;
    private accountId;
    private userCount;
    isReportBuilderDirty: boolean;
    isDashboardBuilderDirty: boolean;
    isReportFilterApply: boolean;
    isReportFilterReset: boolean;
    refreshFilterPropertyEvent: EventEmitter<any>;
    deleteFilterEvent: EventEmitter<any>;
    private pageList;
    userDetails: BehaviorSubject<any | null>;
    private saveCompleteSource;
    saveComplete$: Observable<void>;
    appManifest: BehaviorSubject<any | null>;
    chosenFunction: BehaviorSubject<any | null>;
    formLists: any;
    temparray: any;
    private dataSubject;
    data$: Observable<any>;
    private dataSubjectForWidget;
    dataForWidget$: Observable<any>;
    private appNameSubject;
    appName$: Observable<string>;
    private userDetailsCache;
    private CACHE_EXPIRY_TIME;
    constructor(_httpClient: HttpClient, commonLibConfig: CommonLibConfigurationService);
    /**
     * Getter for pages
     */
    get pageList$(): Observable<Page[]>;
    /**
     * Get drill through pages
     *
     * @param appVersionId
     * @param attribute
     * @returns
     */
    getPageList(appVersionId: number): Observable<Page[]>;
    /**
     * Set pages to pagelist BehaviorSubject
     *
     * @param pages
     */
    setPages(pages: Page[]): void;
    /**
     * when filter click then open filter properties.
     */
    refreshFilterProperty(filter: AxFilter): void;
    /**
     * when filter click then open filter category properties.
     */
    refreshFilterCategoryProperty(filterCategory: FilterCategory): void;
    /**
     * when filter click then open filter properties.
     */
    deleteFilter(guid: string): void;
    getApplist(appId: number, appVersion: number): Observable<any>;
    private objectToParams;
    getAppUsers(appId: number, appVersion: number): Observable<any>;
    getUserAccountId(): any;
    getUser(): Observable<any>;
    sendUpgradeEmail(user: any): Promise<any>;
    /**
    * Getter for user Details
    */
    get userDetails$(): Observable<any>;
    getUserDetail(forceRefresh?: boolean): Observable<any>;
    sendlimitexceedmail(): Observable<any>;
    publishapp(appId: string, appVersion: string, publishStatus: string): Observable<any>;
    notifySaveComplete(): void;
    getVersionList(appId: number, appVersion: number): Observable<any>;
    /**
   * Getter for app manifest
   */
    get appManifest$(): Observable<any>;
    /**
   */
    fetchAppDetails(appVersionId: any, axonatorX1Url: string): Observable<any>;
    /**
* Getter for chosen function
*/
    get chosenFunction$(): Observable<any>;
    /**
   */
    addFunction(value: any): void;
    /**
 * to call get asset form api
 *
 * @param appVersionId
 * @returns
 */
    getAssetFormList(appVersionId: number): Promise<any>;
    /**
   * Get  form-details from x1
   */
    getFormDetails(fid: string): Promise<any>;
    updateData(value: any): void;
    updateDataForWidget(value: any): void;
    private appMinorVersionSubject;
    appMinorVersion$: Observable<string>;
    setAppMinorVersion(version: string): void;
    setAppName(name: string): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<CommonService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<CommonService>;
}
