import { CdkDragDrop, CdkDragStart } from "@angular/cdk/drag-drop"; import { ChangeDetectorRef, EventEmitter, OnChanges, OnDestroy, OnInit, SimpleChanges } from "@angular/core"; import { FormBuilder, FormControl, FormGroup } from "@angular/forms"; import { Observable } from "rxjs"; import { DialogService, EventBus, IDataField, IDataSource, IEvent } from "@nova-ui/bits"; import { IDataSourceError } from "../../../../../components/providers/types"; import { ITableWidgetColumnConfig } from "../../../../../components/table-widget/types"; import { PizzagnaService } from "../../../../../pizzagna/services/pizzagna.service"; import { TableFormatterRegistryService } from "../../../../../services/table-formatter-registry.service"; import { IHasForm } from "../../../../../types"; import { ConfiguratorDataSourceManagerService } from "../../../../services/configurator-data-source-manager.service"; import * as i0 from "@angular/core"; export declare class TableColumnsConfigurationV2Component implements OnInit, IHasForm, OnChanges, OnDestroy { private formBuilder; private changeDetector; private dialogService; private pizzagnaService; dataSourceManager: ConfiguratorDataSourceManagerService; tableFormatterRegistry: TableFormatterRegistryService; private eventBus; static lateLoadKey: string; columns: ITableWidgetColumnConfig[]; componentId: string; /** * @deprecated backward compatibility measure - deprecated in v11. Removal: NUI-5898 * * This property is here because it was present in V1 component and was used to configure formatters */ template: any; formReady: EventEmitter>; form: FormGroup; emptyColumns$: Observable; dataSourceFields: Array; draggedItemHeight: number; isWidthMessageDisplayed: boolean; dataSourceError: IDataSourceError | null; get columnForms(): FormControl[]; dataSource: IDataSource; columnLabel: string; private onDestroy$; constructor(formBuilder: FormBuilder, changeDetector: ChangeDetectorRef, dialogService: DialogService, pizzagnaService: PizzagnaService, dataSourceManager: ConfiguratorDataSourceManagerService, tableFormatterRegistry: TableFormatterRegistryService, eventBus: EventBus); ngOnInit(): void; ngOnChanges(changes: SimpleChanges): void; ngOnDestroy(): void; getColumns(): any[]; updateColumns(columns: ITableWidgetColumnConfig[], emitEvent?: boolean): void; trackBy(index: number, item: FormControl): string | undefined; addColumn(): void; onResetColumns(): void; resetColumns(confirmation: boolean): void; /** * Merges current column definitions with new incoming data fields * * @param currentDatafields * @param columns */ private mergeColumns; /** * This method calculates whether the width message should be displayed * * @param columns * @private */ private getWidthMessageDisplayed; moveItem(index: number, toIndex: number): void; removeItem(index: number): void; drop(event: CdkDragDrop): void; cdkDragStarted(event: CdkDragStart): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }