import { AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, QueryList, Renderer2 } from "@angular/core"; import { FormBuilder, FormGroup } from "@angular/forms"; import { SafeAny } from "../../utilities/type/type"; import { BzAddRowDirective, BzTableColumnDefDirective, BzTableComponent } from "./table.component"; import { BzSmartTable } from "./table.interface"; export declare class BzSmartTableDirective { host: BzTableComponent; private _cd; private _fb; private _renderer2; private _formArray; private _subscriptionArray; private _newArray; private _formList; private _deleteArray; private _newItems; private _modifiedItems; private _newIndex; private _listValue; set list(value: any); formGroup: FormGroup; form: FormGroup; disabledAttributes: string[]; smartArray: EventEmitter; columnDef: QueryList; addRow: BzAddRowDirective; constructor(host: BzTableComponent, _cd: ChangeDetectorRef, _fb: FormBuilder, _renderer2: Renderer2); ngOnInit(): void; ngAfterViewInit(): void; ngAfterContentInit(): void; /** * Remove row. * * @author Federico Gambardella * @param {SafeAny} element * @return {void} */ private _removeRow; /** * Manage deletings items. * * @author Federico Gambardella * @param {SafeAny} element * @param {number} rowIndex * @return {void} */ private _manageDeletingItems; /** * Restore row. * * @author Federico Gambardella * @param element */ private _restoreRow; /** * Get row index. * * @author Federico Gambardella * @param {SafeAny} element */ private _getRowIndex; /** * Get rowIndex by input index. * * @author Federico Gambardella * @param {number} index * @returns */ private _getRowIndexByIndex; /** * Get row index for new items. * * @author Federico Gambardella * @param {SafeAny} element * @return {number} */ private _getRowIndexForNewItems; /** * Check two object are not equal. * * @author Federico Gambardella * @param {SafeAny} item * @param {SafeAny} element * @return {boolean} */ private _checkNotEquals; /** * Add new row to formGroup. * * @author Federico Gambardella * @return {void} */ newRow(): void; /** * Build source list. * * @author Federico Gambardella * @param {SafeAny} value * @return {void} */ private _buildSourceList; /** * Manage modified items. * * @author Federico Gambardella * @param {SafeAny} data * @param {BzCustomFormGroup} form * @return {void} */ private _manageModifiedItems; /** * Manage Exsisting items. * * @author Federico Gambardella * @param {SafeAny} list * @return {void} */ private _manageExistingItems; /** * Build custom form. * * @author Federico Gambardella * @param {number} index * @param {BzInternalState} entityState * @return {BzCustomFormGroup} */ private _buildCustomForm; /** * Compare a object with a list of object. * * @author Federico Gambardella * @param {SafeAny} data * @param {SafeAny} list * @return {boolean} */ private _compareItems; /** * Build new items array. * * @author Federico Gambardella * @return {void} */ private _getNewItems; /** * Build smart object. * * @author Federico Gambardella * @return {BzSmartTable} */ private _buildSmartArray; /** * Build array. * * @author Federico Gambardella * @param {SafeAny} array * @return {SafeAny} */ private _buildArray; /** * Add form array. * * @author Federico Gambardella * @return {void} */ private _addFormArray; /** * Show restore button. * * @author Federico Gambardella * @param {SafeAny} element */ private _showRestoreButton; /** * Manage restore button * * @author Federico Gambardella * @param {BzCustomFormGroup} form */ private _manageRestoreButton; /** * Reset smart table. * * @author Federico Gambardella */ private _resetSmartTable; /** * Delete modified items. * * @author Federico Gambardella */ private _deleteModifiedItems; ngOnDestroy(): void; } export declare class BzRemoveRowDirective { protected _elRef: ElementRef; private _renderer2; constructor(parent: BzTableColumnDefDirective, _elRef: ElementRef, _renderer2: Renderer2); element: SafeAny; removeRow: EventEmitter; ngAfterViewInit(): void; onClick(): void; } export declare class BzRestoreRowDirective implements AfterViewInit { protected _elRef: ElementRef; private _renderer2; constructor(parent: BzTableColumnDefDirective, _elRef: ElementRef, _renderer2: Renderer2); element: any; restoreRow: EventEmitter; ngAfterViewInit(): void; onClick(): void; }