import { EventEmitter } from '@angular/core'; import { AxFilter } from '../enlighten-lib/filters/ax-filter'; import { Page } from '../enlighten-lib/report/graphical-report/page/page'; import { BreadCrumbsService } from '../bread-crumbs/bread-crumbs.service'; import * as i0 from "@angular/core"; /** * @class DrillPageState :- hold the state of drilled page */ export declare class DrillPageState { page: Page; filter: AxFilter; isLoaded: boolean; constructor(page: Page, filter: AxFilter); } export declare class ParentData { name: string; id: number; screenType: number; url: string; } export declare class DrillThroughService { private _breadCrumbService; onPageChanged: EventEmitter; private _drillThroughStates; private _drillThroughStatesRedo; private _parentData; constructor(_breadCrumbService: BreadCrumbsService); /** * This will save page and filter in array for preserving routing state. * * @param page * @param filter */ drillPage(page: Page, filter: AxFilter): void; /** * Remove preserved drill page from array on back button click */ PageBack(): DrillPageState; PageNext(): DrillPageState; /** * This function return the current drill through state. */ GetCurrentDrillThroughState(): DrillPageState; /** * This function removes the pages from Drill Through States on change of bread crumbs state */ changeDrillThroughStates(index: number): boolean; /** * check loaded page already exists if it is then change the drill through states accordingly */ checkLoadedPageExists(pageId: number): boolean; /** * Destroy drill through data */ destroy(): void; /** * Save states in localstorage on reload */ saveStates(): void; /** * Set the parent data of the drill through * * @param id * @param name * @param url */ setParentData(id: number, name: string, url: string): void; /** * Get parent data of drill through * * @returns */ getParentData(): ParentData; /** * Restore states when reload of page finishes */ restoreStates(): void; /** * Set drill thorugh parent bread crumb */ setParentBreadCrumb(): void; /** * Set bread crumbs for all states/pages of drill through */ setBreadCrumbs(): void; /** * Set page bread crumb * * @param page */ setPageBreadCrumb(page: Page): void; /** * returns true if there next page to show * * @returns boolean */ hasNextPage(): boolean; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }