import { AfterContentInit, AfterViewInit, TemplateRef, Injector, OnInit } from '@angular/core'; import { AppDefaults } from '@wm/core'; import { BaseComponent } from '@wm/components/base'; import { TableComponent } from '../table.component'; import { TableColumnGroupDirective } from '../table-column-group/table-column-group.directive'; export declare class TableColumnDirective extends BaseComponent implements OnInit, AfterContentInit, AfterViewInit { private appDefaults; table: TableComponent; group: TableColumnGroupDirective; bindfilterdataset: any; binddataset: any; static initializeProps: void; _filterInstances: any; _inlineInstances: any; _inlineInstancesNew: any; customExprTmpl: any; inlineWidthTempRef: any; private _propsInitialized; private _filterDataSet; private _isRowFilter; private _isInlineEditable; private _isNewEditableRow; key: any; filterInstance: any; inlineInstance: any; inlineInstanceNew: any; backgroundcolor: any; binding: any; caption: any; dataset: any; defaultvalue: any; editWidgetType: any; filterwidget: any; field: any; formatpattern: any; custompipeformat: any; generator: any; limit: any; mobiledisplay: any; pcdisplay: any; tabletdisplay: any; readonly: any; required: any; maxchars: any; minvalue: any; maxvalue: any; regexp: any; searchable: any; show: any; sortable: any; textalignment: any; textcolor: any; type: any; width: any; datepattern: any; editdatepattern: any; filterdatafield: any; filterdisplayfield: any; filterdisplaylabel: any; filtersearchkey: any; filterplaceholder: any; datafield: any; displayfield: any; displayName: any; pcDisplay: any; mobileDisplay: any; tabletDisplay: any; textAlignment: any; backgroundColor: any; textColor: any; primaryKey: any; relatedEntityName: any; style: any; class: any; ngclass: any; filterOn: any; filterControl: any; isDataSetBound: any; isFilterDataSetBound: any; showPendingSpinner: any; showPendingSpinnerNew: any; validationmessage: any; activeControlType: any; private _dataoptions; private _datasource; private notifyForFields; private fieldValidations; private fieldValidations_new; private syncValidators; private asyncValidators; private observeOnFields; filterTemplateRef: TemplateRef; constructor(inj: Injector, appDefaults: AppDefaults, table: TableComponent, group: TableColumnGroupDirective, bindfilterdataset: any, binddataset: any); get dataoptions(): any; set dataoptions(options: any); get datasource(): any; set datasource(ds: any); ngOnInit(): void; ngAfterContentInit(): void; ngAfterViewInit(): void; applyValidations(): void; removeValidations(): void; applyNewRowValidations(): void; removeNewRowValidations(): void; addFormControl(suffix?: string): void; getFormControl(suffix?: string): import("@angular/forms").AbstractControl; private _checkNewEditableRowControl; setUpControls(): void; resetFilter(): void; onFilterValueChange(val: any): void; get datavalue(): any; set datavalue(val: any); get value(): any; set value(val: any); onValueChange(val: any, widget: any): void; loadFilterData(): void; loadInlineWidgetData(): void; onDataSourceChange(): void; setFilterWidgetDataSet(): void; setUpFilterWidget(): void; notifyChanges(quickEdit?: any): void; observeOn(fields: any): void; setUpValidators(): void; setAsyncValidators(validators: any): void; setValidators(validators: any): void; boundFn(fn: any): any; onStatusChange(status: any, type: any): void; setSummaryRowData(data: any): void; private _invokeSummaryRowData; private _getColumnData; aggregate: { sum: () => any; average: (precision?: number) => any; count: () => any; minimum: () => any; maximum: () => any; percent: (value: any, precision?: number) => any; }; setInlineWidgetProp(widget: any, prop: any, nv: any): void; setUpInlineWidget(widget: any): void; getStyleDef(): string; populateFieldDef(): void; onPropertyChange(key: any, nv: any, ov: any): void; setProperty(property: any, nv: any): void; }