import { AfterContentInit, Injector, NgZone, OnDestroy, QueryList, TemplateRef, ViewContainerRef } from '@angular/core'; import { ControlValueAccessor, FormBuilder, FormGroup } from '@angular/forms'; import { App, DynamicComponentRefProvider, PaginationService, StatePersistence, Viewport } from '@wm/core'; import { Observable, Subject } from 'rxjs'; import { StylableComponent, TrustAsPipe } from '@wm/components/base'; import { ListComponent } from '@wm/components/data/list'; import * as i0 from "@angular/core"; export declare class TableComponent extends StylableComponent implements AfterContentInit, OnDestroy, ControlValueAccessor { inj: Injector; fb: FormBuilder; private app; private dynamicComponentProvider; private statePersistence; private paginationService; private viewport; parentList: ListComponent; binddataset: any; binddatasource: any; readonlygrid: any; private ngZone; private trustAsPipe; static initializeProps: void; dataNavigator: any; private _tableElement; rowActionTmpl: QueryList; rowActionsViewRef: ViewContainerRef; filterTmpl: QueryList; filterViewRef: ViewContainerRef; inlineWidgetTmpl: QueryList; inlineEditViewRef: ViewContainerRef; inlineWidgetNewTmpl: QueryList; inlineEditNewViewRef: ViewContainerRef; customExprTmpl: QueryList; customExprViewRef: ViewContainerRef; rowExpansionActionTmpl: QueryList; rowExpansionTmpl: TemplateRef; rowDetailViewRef: ViewContainerRef; rowExpansionActionViewRef: ViewContainerRef; dynamicTableRef: ViewContainerRef; private rowActionsCompiledTl; private rowFilterCompliedTl; private inlineCompliedTl; private inlineNewCompliedTl; private customExprCompiledTl; private customExprCompiledSummaryTl; private rowDefInstances; private rowDefMap; private rowExpansionActionTl; columns: {}; formfields: {}; datagridElement: any; datasource: any; editmode: any; enablecolumnselection: any; enablesort: boolean; filtermode: any; filteronkeypress: any; isrowselectable: any; searchlabel: any; formposition: any; gridclass: any; gridfirstrowselect: any; iconclass: any; ondemandmessage: any; allowpagesizechange: any; viewlessmessage: any; showviewlessbutton: boolean; _triggeredByUser: any; _isInlineEditSave: any; /** Covers async navigator/dataset updates after inline/quickedit save (wm.Variable). */ private _modelVarEditSoftRefreshActiveUntil; isGridEditMode: any; loadingdatamsg: any; multiselect: any; name: any; _isDependent: any; navigation: any; navigationSize: any; navigationalign: any; nodatamessage: any; pagesize: any; updatedPageSize: any; actualPageSize: any; currentpage: any; prevData: any; primaryKey: any[]; radioselect: any; headerselectall: any; rowclass: any; rowngclass: any; selectedItems: any[]; showheader: any; showrecordcount: any; showrowindex: any; subheading: any; title: any; shownewrow: any; deleteoktext: any; deletecanceltext: any; onError: any; onRowinsert: any; onRowupdate: any; onRowdelete: any; statehandler: any; selectedItemChange: Subject; selectedItemChange$: Observable; actions: any[]; _actions: { header: any[]; footer: any[]; }; exportOptions: any[]; exportdatasize: any; formWidgets: any; headerConfig: any; items: any[]; navControls: any; rowActions: any[]; selectedColumns: any; shownavigation: boolean; showFirstRow: boolean; dataset: any; _liveTableParent: any; isPartOfLiveGrid: any; gridElement: any; isNewRowInserted: any; isMobile: any; isLoading: any; isRowDeleted: any; documentClickBind: () => void; actionRowIndex: any; actionRowPage: any; prevFilterExpression: any; fieldDefs: any; rowDef: any; rowInstance: any; pagesizeoptions: any; prevPagesizeoptions: any; multiselecttitle: any; multiselectarialabel: any; radioselecttitle: any; radioselectarialabel: any; private fullFieldDefs; private __fullData; private dataNavigatorWatched; private navigatorResultWatch; private navigatorMaxResultWatch; private filterInfo; private sortInfo; private serverData; private filternullrecords; private variableInflight; private isdynamictable; private _dynamicContext; private noOfColumns; onDemandLoad: any; infScroll: any; private isDataLoading; private currentPage; private applyProps; redraw: import("lodash").DebouncedFunc<(forceRender: any) => void>; debouncedHandleLoading: import("lodash").DebouncedFunc<(data: any) => void>; rowFilter: any; matchModeTypesMap: any; matchModeMsgs: any; emptyMatchModes: any; _searchSortHandler: () => void; searchSortHandler: (...args: any[]) => void; _isPageSearch: any; _isClientSearch: any; checkFiltersApplied: Function; getSearchResult: Function; getSortResult: Function; getFilterFields: Function; onRowFilterChange: () => void; onFilterConditionSelect: () => void; showClearIcon: () => void; clearRowFilter: () => void; adjustContainer: () => void; getNavigationTargetBySortInfo: Function; refreshData: Function; clearFilter: Function; ngform: FormGroup; updateVariable: Function; updateRecord: Function; deleteRecord: Function; insertRecord: Function; editRow: Function; addNewRow: Function; addRow: Function; deleteRow: Function; onRecordDelete: Function; initiateSelectItem: Function; hideEditRow: Function; saveRow: Function; cancelRow: Function; private _pageLoad; gridOptions: { data: any[]; colDefs: any[]; startRowIndex: number; mode: string; sortInfo: { field: string; direction: string; }; filtermode: string; filteronkeypress: boolean; isrowselectable: boolean; searchLabel: string; rowActions: any[]; headerConfig: any[]; rowClass: string; editmode: string; formPosition: string; isMobile: boolean; rowExpansionEnabled: boolean; rowDef: { position: string; }; name: string; messages: { selectField: string; }; securityUtils: { pipeTransform: {}; }; navigation: string; isdynamictable: string; deletedRowIndex: number; lastActionPerformed: string; isSearchTrigerred: boolean; isDatasetUpdated: boolean; isDataUpdatedByUser: boolean; showviewlessbutton: boolean; ondemandmessage: string; allowpagesizechange: boolean; pagesizeoptions: string; viewlessmessage: string; loadingdatamsg: string; isNextPageData: any; enableSort: boolean; multiselect: boolean; showRadioColumn: boolean; enableColumnSelection: boolean; multiselecttitle: string; multiselectarialabel: string; radioselecttitle: string; headerselectall: boolean; radioselectarialabel: string; ACTIONS: { DELETE: string; EDIT: string; SEARCH_OR_SORT: string; DEFAULT: string; FILTER_CRITERIA: string; DATASET_UPDATE: string; }; actionRowIndex: any; actionRowPage: any; isLastPage: boolean; getCurrentPage: () => any; setCurrentPage: (pageNum: any) => void; getDataSource: () => any; getPageSize: () => any; getUpdatedPageSize: () => any; getPageCount: () => any; enableNavigation: () => void; setDeletedRowIndex: (id: any) => void; setLastActionPerformed: (action: any) => void; isNavTypeScrollOrOndemand: () => boolean; setIsSearchTrigerred: (value: any) => void; setIsDatasetUpdated: (value: any) => void; setIsNextPageData: (value: any) => void; setIsDataUpdatedByUser: (value: any) => void; onDataRender: () => void; getParentTableData: () => { parentId: any; parentPage: any; }; onRowSelect: (row: any, e: any) => void; assignSelectedItems: (row: any, e: any, rowInfo: any) => void; onRowDblClick: (row: any, e: any) => void; onRowDeselect: (row: any, e: any) => void; callOnRowDeselectEvent: (row: any, e: any) => void; callOnRowClickEvent: (row: any, e: any) => void; closePopover: (element: any) => void; onColumnSelect: (col: any, e: any) => void; onColumnDeselect: (col: any, e: any) => void; onHeaderClick: (col: any, e: any) => void; selectAllRows: (checked: any, e: any) => void; onRowDelete: (row: any, cancelRowDeleteCallback: any, e: any, callBack: any, options: any) => void; onRowInsert: (row: any, e: any, callBack: any, options: any) => void; beforeRowUpdate: (row: any, eventName?: any) => void; afterRowUpdate: (row: any, e: any, callBack: any, options: any) => void; onBeforeRowUpdate: (row: any, e: any, options: any) => any; onBeforeRowInsert: (row: any, e: any, options: any) => any; onBeforeRowDelete: (row: any, e: any, options: any) => any; onFormRender: ($row: any, e: any, operation: any, alwaysNewRow: any) => void; onBeforeFormRender: (row: any, e: any, operation: any) => any; registerRowNgClassWatcher: (rowData: any, index: any) => void; registerColNgClassWatcher: (rowData: any, colDef: any, rowIndex: any, colIndex: any, summaryRow: any) => void; registerCollapseOrExpandTitleWatch: (expr: any, rowData: any, index: any, titleName: any, element: any) => void; clearCustomExpression: () => void; updateCustomExpressionContexts: (preparedData: any) => void; clearRowDetailExpression: () => void; invalidateRowDetailCache: (preparedData: any) => void; refreshSelectedItems: () => void; generateCustomExpressions: (rowData: any, index: any, summaryRow?: any) => void; generateRowExpansionCell: (rowData: any, index: any) => void; getRowExpansionAction: (index: any) => any; generateRowDetailView: ($event: any, rowData: any, rowId: any, $target: any, $overlay: any, callback: any) => void; onBeforeRowCollapse: ($event: any, row: any, rowId: any) => any; onRowCollapse: ($event: any, row: any) => void; getCustomExpression: (fieldName: any, index: any, summaryRow?: any) => any; clearRowActions: () => void; generateRowActions: (rowData: any, index: any) => void; getRowAction: (index: any) => any; generateInlineEditRow: (rowData: any, alwaysNewRow: any) => void; getInlineEditWidget: (fieldName: any, value: any, alwaysNewRow: any) => any; setFieldValue: (fieldName: any, value: any) => void; getFieldValue: (fieldName: any) => any; addLoadMoreBtn: () => void; bindScrollEvt: () => void; generateFilterRow: () => void; getFilterWidget: (fieldName: any) => any; setGridEditMode: (val: any) => void; setGridState: (val: any) => void; setActionRowIndex: (val: any) => void; clearActionRowIndex: () => void; noChangesDetected: () => void; redrawWidgets: () => void; searchHandler: any; sortHandler: any; timeoutCall: (fn: any, delay: any) => void; runInNgZone: (fn: any) => void; safeApply: () => void; setTouched: (name: any) => void; clearForm: any; callLoadInlineWidgetData: () => void; applyValidations: (col: any, alwaysNewRow: any) => void; removeValidations: (alwaysNewRow: any) => void; }; /** wm.Variable + inline or quickedit (editmode is string from markup; normalize case). */ private isModelVariableInlineOrQuickEdit; /** True while an inline/quickedit row save is updating the grid (incl. delayed navigator emit). */ private shouldSoftRefreshAfterModelVarRowSave; private _gridData; private _selectedItemsExist; set gridData(newValue: any); get gridData(): any; get selecteditem(): any; set selecteditem(val: any); onKeyPress($event: any): void; constructor(inj: Injector, fb: FormBuilder, app: App, dynamicComponentProvider: DynamicComponentRefProvider, statePersistence: StatePersistence, paginationService: PaginationService, viewport: Viewport, parentList: ListComponent, binddataset: any, binddatasource: any, readonlygrid: any, ngZone: NgZone, trustAsPipe: TrustAsPipe, explicitContext: any); ngAfterContentInit(): void; private getConfiguredState; private handleStateParams; private triggerWMEvent; private sortStateHandler; private searchStateHandler; filterEmptyValues(item: any): boolean; compareFilterExpressions(prevFilters: any, newFilters: any): boolean; setLastActionToFilterCriteria(): void; setLastActionToDatasetUpdate(): void; checkIfVarFiltersApplied(): void; getActualPageSize(): any; watchVariableDataSet(newVal: any): void; ngOnDestroy(): void; addRowIndex(row: any): any; addEventsToContext(context: any): void; execute(operation: any, options: any): any; isNavigationEnabled(): any; getClonedRowObject(rowData: any): any; handleLoading(data: any): void; setDisabledOnField(operation: any, colDef: any, widgetType: any): void; resetFormControl(ctrl: any): void; clearForm(newRow?: any): void; showFieldBasedOnScreenType(field: any): any; isEmptyRecord(record: any): boolean; removeEmptyRecords(serviceData: any): any[]; setGridData(serverData: any): void; setDataGridOption(optionName: any, newVal: any, forceSet?: boolean): void; callDataGridMethod(...args: any[]): any; renderOperationColumns(): void; enablePageNavigation(): void; resetPageNavigation(): void; isDataValid(): boolean; populateGridData(serviceData: any): void; generateDynamicColumns(columns: any): Promise; prepareColDefs(data: any): void; createGridColumns(data: any): void; getSortExpr(): any; onPropertyChange(key: string, nv: any, ov?: any): void; setDefaultPageSize(nv: any): void; isPageSizeOptionsChanged(): boolean; selectPageSize(pagesize: number): void; sanitizeCommaSeparatedIntegers(input: any): string; getNormalizedPageSizeOptionsArray(input: any): number[]; onDataSourceChange(): void; private refreshRowFilterDataFromDataset; private clearActionRowVars; onStyleChange(key: any, nv: any, ov: any): void; populateActions(): void; renderDynamicFilterColumn(filteTemRef: any): void; registerColumns(tableColumn: any, colIndex: any): void; registerFormField(name: any, formField: any): void; registerActions(tableAction: any): void; registerRow(tableRow: any, rowInstance: any): void; registerRowActions(tableRowAction: any): void; selectItem(item: any, data: any): void; deselectItem(item: any): void; onDataNavigatorDataSetChange(nv: any): any; toggleMessage(show: any, type: any, msg: any, header?: any): void; export($item: any): void; expandRow(rowId: any): void; collapseRow(rowId: any): void; private _documentClickBind; private _redraw; invokeActionEvent($event: any, expression: string): void; protected handleEvent(node: HTMLElement, eventName: string, callback: Function, locals: any): void; triggerUploadEvent($event: any, eventName: any, fieldName: any, row: any): void; registerFormWidget(): void; writeValue(): void; private _onChange; private _onTouched; registerOnChange(fn: any): void; registerOnTouched(fn: any): void; ngOnDetach(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }