import { NzDrawerRef } from 'ng-zorro-antd/drawer'; import { NzModalRef } from 'ng-zorro-antd/modal'; import { Subject, Subscription } from 'rxjs'; import { PageBuilderService } from './services/page-builder.service'; import { BehaviorSubject } from 'rxjs'; import { PageBuilder, PageBuilderDefaultInput, PbDefaultButtonOutput, ActionButtonResponse, PbOutputSub } from './types/pb-types/page-builder.type'; import { ActionButtonCodecService } from './services/action-button-codec.service'; import { ActionButton } from './types/external-types/actionButton'; export declare abstract class PageBuilderMain implements PageBuilder { protected pageBuilderService: PageBuilderService; protected actionButtonCodecService: ActionButtonCodecService; page: T; pageBuilderParameters: PageBuilderDefaultInput; evetEmitterSubs: { [key: string]: Subscription; }; pageLoading: boolean; loadingSub: Subject; modal: NzModalRef; drawer: NzDrawerRef; pageSub: BehaviorSubject; subs: { [key: string]: Subscription; }; private afterLoadBtnExecuted; constructor(pageBuilderService: PageBuilderService, actionButtonCodecService: ActionButtonCodecService); initInputData(value: PageBuilderDefaultInput): void; /** * Da MainComponent with love * @param subName */ unsubscribeSub(subName: string | null): void; handleResStructure(res: any): void; /** * [31/05/2022] * @param structure */ standardStructureParser(structure: T): void; /** * * @param page */ protected updatePageSub(page?: T): void; private initPageSub; standardOnDestroyFn(): void; initLoadingSub(): void; stopLoading(): void; refreshPage(): void; /** * */ pageListener(): void; btnHandler(event: PbDefaultButtonOutput): void; handlerActionButtonResFn(res: ActionButtonResponse, subLoading: Subject | undefined): void; checkModalClose(res: any): void; abstract actionButtonResNeedRefreshFn(res: any): void; abstract actionButtonResCloseModalFn(res: any): void; abstract actionButtonResEventToHandleFn(res: any): void; /** * Handle afterLoadBtn query parameter from URL * This method reads the afterLoadBtn parameter, decodes it, and executes the action button */ protected handleAfterLoadBtn(): void; /** * Execute the decoded action button * @param actionButton The action button to execute */ protected executeAfterLoadBtn(actionButton: ActionButton): void; /** * Remove afterLoadBtn parameter from URL after execution */ protected removeAfterLoadBtnFromUrl(): void; /** * * @returns */ getPageStructureObs(): import("rxjs").Observable | null; }