import { Overlay } from '@angular/cdk/overlay'; import { ElementRef, EventEmitter, OnInit, SimpleChanges, TemplateRef, ViewContainerRef } from '@angular/core'; import { ActivatedRoute, Router } from '@angular/router'; import { TranslateService } from '@ngx-translate/core'; import { Observable, Subscription } from 'rxjs'; import { FararuPrintService } from '../../../api/print/fararu-print-service'; import { GeneralActionButtonInterface, GeneralActionInterface, ParamHttpHeaderItemInterface, SaveResponse } from '../../../models'; import { ConfigSandbox } from '../../../store'; import { FararuLayoutService } from '../../layouts/fararu-layout.service'; import { FormStateEnum } from '../../../models/form-state.enum'; import { ModalService } from '../../modal/modal.service'; import { FararuToastService } from '../../toast'; import * as i0 from "@angular/core"; export declare class GeneralCustomFormComponent implements OnInit { private readonly _overlay; private readonly _viewContainerRef; private _translateService; private _modalService; private _layoutService; private _printService; private router; private _activatedRoute; private _configSandbox; private _toastService; mainContainerElementRef: ElementRef; asideContainerTemplateRef: TemplateRef; headerCustomActions?: GeneralActionButtonInterface[]; operationActions?: GeneralActionButtonInterface[]; backUrl?: string; uniquePageName?: string; printActions?: GeneralActionInterface[]; identityFieldName: string; printParams: ParamHttpHeaderItemInterface[]; startSlicePercentforTwinFooter: number; hideFooterBorder: boolean; /** * Message Inputs */ showMessage: boolean; informationMessage: string; headerTemplate?: TemplateRef; asideTemplate?: TemplateRef; footerTemplate?: TemplateRef; bottomSheetTemplate?: TemplateRef; leftFooterTemplate?: TemplateRef; bottomSheetMaxHeight?: number; bottomSheetExpanded?: boolean; bottomSheetTitle?: string; asideTitle?: string; /** * Header Configuration */ hasSaveButton: boolean; hasSaveAndNewButton: boolean; hasSaveAndConfirmButton: boolean; hasSaveAndExitButton: boolean; hasSaveAndPrintButton: boolean; hasAsideToggleButton: boolean; hasExitButton: boolean; hasGiftButton: boolean; giftButtonDisabled: boolean; hasPrintButton: boolean; hasHeader: Boolean; asideOverlay: boolean; asideShow: boolean; isLoading: boolean; hasFormStateManagement: boolean; saveAction: () => Observable; resetAction: () => void; confirmAction: (saveResult: SaveResponse) => Observable; printAction: (saveResult: SaveResponse) => Observable; /** * Header Outputs */ saveAndNewClicked: EventEmitter; saveAndConfirmClicked: EventEmitter; saveAndPrintClicked: EventEmitter; saveAndExitClicked: EventEmitter; saveClicked: EventEmitter; sidebarReloadClicked: EventEmitter; exitClicked: EventEmitter; giftClicked: EventEmitter; printClicked: EventEmitter; stateDetected: EventEmitter<{ state: FormStateEnum; entityId: string | number | null; }>; translationPath: string; panelExpandingState?: 'top' | 'bottom' | 'side'; actions?: GeneralActionButtonInterface[]; sideActions?: GeneralActionButtonInterface[]; private _overlayRef; selectedRows: any; checkedItems: any[]; reportLoading: boolean; reportProgress: number; downloadSubscription: Subscription; state: FormStateEnum | undefined; entityId: string | number | null; isSaving: boolean; constructor(_overlay: Overlay, _viewContainerRef: ViewContainerRef, _translateService: TranslateService, _modalService: ModalService, _layoutService: FararuLayoutService, _printService: FararuPrintService, router: Router, _activatedRoute: ActivatedRoute, _configSandbox: ConfigSandbox, _toastService: FararuToastService); ngOnInit(): void; ngOnChanges(changes: SimpleChanges): void; handleSaveFunction(btn: 'new' | 'exit' | 'print' | 'confirm' | 'save'): void; cancelPdfDownload(): void; messageCloseClicked(e: any): void; expandingButtonClickHandler(state: 'top' | 'bottom'): void; bottomSheetExpandHandler(): void; toggleAsideOverlay(isOveraly?: boolean): void; toggleAsideShow(isShow?: boolean): void; asideToggleButtonClicked(e: any): void; clickOutsideOverlay(e: any): void; private _openAsideMenu; private _createAsideMenuOverlay; private _closeAsideMenu; exitClickHandler(e: any): void; closePage(): void; addHeaderPrintActions(): void; /** * Detects the form state and entity ID from Angular route parameters */ private detectFormStateAndId; private _getStateFromValue; get isCustomFormLoading(): boolean; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }