@masterteam/components 0.0.94 → 0.0.97

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,23 +2,23 @@ import * as _angular_core from '@angular/core';
2
2
  import { ElementRef, NgZone } from '@angular/core';
3
3
  import { CdkDragDrop } from '@angular/cdk/drag-drop';
4
4
 
5
- type EntityViewType = 'Text' | 'Date' | 'DateTime' | 'Percentage' | 'Status' | 'Currency' | 'Checkbox' | 'User';
6
- /** Entity size – controls column span (1-12) inside a 12-column grid */
7
- type EntitySize = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12;
5
+ type EntityViewType = 'Text' | 'LongText' | 'Date' | 'DateTime' | 'Percentage' | 'Status' | 'Currency' | 'Checkbox' | 'User' | 'Lookup';
6
+ /** Entity size – controls column span (1-24) inside a 24-column grid */
7
+ type EntitySize = 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24;
8
8
  interface EntityBaseConfig {
9
- /** Column span of the entity card (1-12). Default: 4 */
9
+ /** Column span of the entity card (1-24). Default: 8 */
10
10
  size?: EntitySize;
11
11
  /** Whether to show a dashed border around the entity card */
12
12
  showBorder?: boolean;
13
+ /** Whether to hide the entity name label */
14
+ hideName?: boolean;
13
15
  }
14
16
  interface EntityUserConfig extends EntityBaseConfig {
15
17
  showDisplayName?: boolean;
16
18
  showPhoneNumber?: boolean;
17
19
  showEmail?: boolean;
18
20
  }
19
- interface EntityPercentageConfig extends EntityBaseConfig {
20
- showName?: boolean;
21
- }
21
+ type EntityPercentageConfig = EntityBaseConfig;
22
22
  type EntityConfiguration = EntityBaseConfig | EntityUserConfig | EntityPercentageConfig;
23
23
  interface EntityStatusValue {
24
24
  key: string;
@@ -26,6 +26,20 @@ interface EntityStatusValue {
26
26
  color: string;
27
27
  description?: string;
28
28
  }
29
+ interface EntityLookupValue {
30
+ key: string;
31
+ display: string;
32
+ color: string;
33
+ description?: string;
34
+ }
35
+ interface EntityUserValue {
36
+ id?: string;
37
+ userName?: string;
38
+ displayName?: string;
39
+ photoUrl?: string;
40
+ phoneNumber?: string;
41
+ email?: string;
42
+ }
29
43
  interface EntityData {
30
44
  id?: number;
31
45
  propertyId?: number;
@@ -34,14 +48,9 @@ interface EntityData {
34
48
  name?: string;
35
49
  rawValue?: string;
36
50
  order?: number;
37
- value: string | EntityStatusValue;
51
+ value: string | EntityStatusValue | EntityUserValue | EntityLookupValue;
38
52
  viewType: EntityViewType;
39
53
  type?: string;
40
- userName?: string;
41
- displayName?: string;
42
- photoUrl?: string;
43
- phoneNumber?: string;
44
- email?: string;
45
54
  configuration?: EntityConfiguration;
46
55
  }
47
56
  /** Emitted when an entity is resized via the drag handle */
@@ -59,6 +68,7 @@ declare class EntityText {
59
68
  readonly value: _angular_core.InputSignal<string | undefined>;
60
69
  readonly displayName: _angular_core.Signal<string>;
61
70
  readonly displayValue: _angular_core.Signal<string>;
71
+ readonly hideName: _angular_core.Signal<boolean>;
62
72
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<EntityText, never>;
63
73
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<EntityText, "mt-entity-text", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
64
74
  }
@@ -71,6 +81,7 @@ declare class EntityDate {
71
81
  readonly value: _angular_core.InputSignal<string | undefined>;
72
82
  readonly displayName: _angular_core.Signal<string>;
73
83
  readonly displayValue: _angular_core.Signal<string>;
84
+ readonly hideName: _angular_core.Signal<boolean>;
74
85
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<EntityDate, never>;
75
86
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<EntityDate, "mt-entity-date", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
76
87
  }
@@ -100,9 +111,8 @@ declare class EntityStatus {
100
111
  declare class EntityUser {
101
112
  /** Full entity data object */
102
113
  readonly data: _angular_core.InputSignal<EntityData | undefined>;
103
- /** Individual inputs (used when data is not provided) */
104
- readonly displayName: _angular_core.InputSignal<string | undefined>;
105
- readonly photoUrl: _angular_core.InputSignal<string | undefined>;
114
+ /** Resolved user value object from data().value */
115
+ private readonly userValue;
106
116
  readonly rawUserName: _angular_core.Signal<string | null>;
107
117
  readonly userName: _angular_core.Signal<string>;
108
118
  readonly userPhoto: _angular_core.Signal<string>;
@@ -116,7 +126,7 @@ declare class EntityUser {
116
126
  readonly email: _angular_core.Signal<string>;
117
127
  readonly hasContactInfo: _angular_core.Signal<boolean>;
118
128
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<EntityUser, never>;
119
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<EntityUser, "mt-entity-user", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "displayName": { "alias": "displayName"; "required": false; "isSignal": true; }; "photoUrl": { "alias": "photoUrl"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
129
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<EntityUser, "mt-entity-user", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
120
130
  }
121
131
 
122
132
  declare class EntityPercentage {
@@ -132,8 +142,7 @@ declare class EntityPercentage {
132
142
  readonly hasNumericValue: _angular_core.Signal<boolean>;
133
143
  readonly numericValue: _angular_core.Signal<number>;
134
144
  readonly maxValue: _angular_core.Signal<number>;
135
- private readonly config;
136
- readonly showName: _angular_core.Signal<boolean>;
145
+ readonly hideName: _angular_core.Signal<boolean>;
137
146
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<EntityPercentage, never>;
138
147
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<EntityPercentage, "mt-entity-percentage", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "rawValue": { "alias": "rawValue"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
139
148
  }
@@ -146,6 +155,7 @@ declare class EntityCurrency {
146
155
  readonly value: _angular_core.InputSignal<string | undefined>;
147
156
  readonly displayName: _angular_core.Signal<string>;
148
157
  readonly displayValue: _angular_core.Signal<string>;
158
+ readonly hideName: _angular_core.Signal<boolean>;
149
159
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<EntityCurrency, never>;
150
160
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<EntityCurrency, "mt-entity-currency", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
151
161
  }
@@ -159,12 +169,49 @@ declare class EntityCheckbox {
159
169
  readonly rawValue: _angular_core.InputSignal<string | undefined>;
160
170
  readonly displayName: _angular_core.Signal<string>;
161
171
  readonly emptyLabel = "_";
172
+ readonly hideName: _angular_core.Signal<boolean>;
162
173
  readonly checkboxState: _angular_core.Signal<boolean | null>;
163
174
  private parseBoolean;
164
175
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<EntityCheckbox, never>;
165
176
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<EntityCheckbox, "mt-entity-checkbox", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; "rawValue": { "alias": "rawValue"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
166
177
  }
167
178
 
179
+ declare class EntityLongText {
180
+ /** Full entity data object */
181
+ readonly data: _angular_core.InputSignal<EntityData | undefined>;
182
+ /** Individual inputs (used when data is not provided) */
183
+ readonly name: _angular_core.InputSignal<string | undefined>;
184
+ readonly value: _angular_core.InputSignal<string | undefined>;
185
+ readonly displayName: _angular_core.Signal<string>;
186
+ readonly displayValue: _angular_core.Signal<string>;
187
+ readonly hideName: _angular_core.Signal<boolean>;
188
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<EntityLongText, never>;
189
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<EntityLongText, "mt-entity-long-text", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
190
+ }
191
+
192
+ declare class EntityLookup {
193
+ /** Full entity data object */
194
+ readonly data: _angular_core.InputSignal<EntityData | undefined>;
195
+ /** Individual inputs (used when data is not provided) */
196
+ readonly name: _angular_core.InputSignal<string | undefined>;
197
+ readonly value: _angular_core.InputSignal<EntityLookupValue | undefined>;
198
+ readonly displayName: _angular_core.Signal<string>;
199
+ readonly lookupValue: _angular_core.Signal<EntityLookupValue | null>;
200
+ readonly badgeStyle: _angular_core.Signal<{
201
+ color?: undefined;
202
+ backgroundColor?: undefined;
203
+ } | {
204
+ color: string;
205
+ backgroundColor: string;
206
+ }>;
207
+ readonly emptyLabel = "_";
208
+ readonly lookupLabel: _angular_core.Signal<string>;
209
+ readonly hideName: _angular_core.Signal<boolean>;
210
+ private hexToRgba;
211
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<EntityLookup, never>;
212
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<EntityLookup, "mt-entity-lookup", never, { "data": { "alias": "data"; "required": false; "isSignal": true; }; "name": { "alias": "name"; "required": false; "isSignal": true; }; "value": { "alias": "value"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
213
+ }
214
+
168
215
  declare class EntityPreview {
169
216
  /** Single entity data to display */
170
217
  readonly data: _angular_core.InputSignal<EntityData>;
@@ -177,7 +224,7 @@ declare class EntitiesPreview {
177
224
  readonly entities: _angular_core.InputSignal<EntityData[]>;
178
225
  /** Entities sorted by order */
179
226
  readonly sortedEntities: _angular_core.Signal<EntityData[]>;
180
- /** Returns the grid-column span for a given entity size (1-12) */
227
+ /** Returns the grid-column span for a given entity size (1-24) */
181
228
  getColSpan(entity: EntityData): string;
182
229
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<EntitiesPreview, never>;
183
230
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<EntitiesPreview, "mt-entities-preview", never, { "entities": { "alias": "entities"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
@@ -187,7 +234,7 @@ declare class EntitiesPreview {
187
234
  * Base class that encapsulates all entity resize-via-drag logic.
188
235
  *
189
236
  * Extend this directive in any component that needs column-resize behaviour
190
- * on a 12-column CSS grid. The subclass must:
237
+ * on a 24-column CSS grid. The subclass must:
191
238
  * - Provide a `model.required<EntityData[]>()` (or equivalent) for the
192
239
  * entity list so `updateEntitySize()` can be called after resize.
193
240
  * - Contain a `.grid` element (or override `getGridElement()`).
@@ -240,7 +287,7 @@ declare class EntitiesManage extends EntitiesResizeBase {
240
287
  readonly entitiesReordered: _angular_core.OutputEmitterRef<EntityData[]>;
241
288
  /** Entities sorted by their order field */
242
289
  readonly sortedEntities: _angular_core.Signal<EntityData[]>;
243
- /** Returns the grid-column span for a given entity size (1-12) */
290
+ /** Returns the grid-column span for a given entity size (1-24) */
244
291
  getColSpan(entity: EntityData): string;
245
292
  /** Handle drag-drop reorder */
246
293
  onDrop(event: CdkDragDrop<EntityData[]>): void;
@@ -249,5 +296,5 @@ declare class EntitiesManage extends EntitiesResizeBase {
249
296
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<EntitiesManage, "mt-entities-manage", never, { "entities": { "alias": "entities"; "required": true; "isSignal": true; }; }, { "entities": "entitiesChange"; "entitiesReordered": "entitiesReordered"; }, never, never, true, never>;
250
297
  }
251
298
 
252
- export { EntitiesManage, EntitiesPreview, EntitiesResizeBase, EntityCheckbox, EntityCurrency, EntityDate, EntityPercentage, EntityPreview, EntityStatus, EntityText, EntityUser };
253
- export type { EntityBaseConfig, EntityConfiguration, EntityData, EntityPercentageConfig, EntityResizeEvent, EntitySize, EntityStatusValue, EntityUserConfig, EntityViewType };
299
+ export { EntitiesManage, EntitiesPreview, EntitiesResizeBase, EntityCheckbox, EntityCurrency, EntityDate, EntityLongText, EntityLookup, EntityPercentage, EntityPreview, EntityStatus, EntityText, EntityUser };
300
+ export type { EntityBaseConfig, EntityConfiguration, EntityData, EntityLookupValue, EntityPercentageConfig, EntityResizeEvent, EntitySize, EntityStatusValue, EntityUserConfig, EntityUserValue, EntityViewType };
@@ -4,6 +4,7 @@ import { TemplateRef } from '@angular/core';
4
4
  import { MTIcon } from '@masterteam/icons';
5
5
  import { ConfirmationConfig, ConfirmationService } from '@masterteam/components/confirmation';
6
6
  import { Table as Table$1, TablePageEvent } from 'primeng/table';
7
+ import { EntityData } from '@masterteam/components/entities';
7
8
  import { ControlValueAccessor } from '@angular/forms';
8
9
 
9
10
  /**
@@ -44,7 +45,7 @@ type TableFilters = Record<string, FilterValue | any>;
44
45
  /**
45
46
  * Column type definition
46
47
  */
47
- type ColumnType = 'text' | 'boolean' | 'date' | 'user' | 'custom';
48
+ type ColumnType = 'text' | 'boolean' | 'date' | 'user' | 'status' | 'entity' | 'custom';
48
49
  /**
49
50
  * Event emitted when a cell value changes
50
51
  */
@@ -81,6 +82,7 @@ declare class Table {
81
82
  lazyLoad: _angular_core.OutputEmitterRef<any>;
82
83
  columnReorder: _angular_core.OutputEmitterRef<any>;
83
84
  rowReorder: _angular_core.OutputEmitterRef<any>;
85
+ rowClick: _angular_core.OutputEmitterRef<any>;
84
86
  filters: _angular_core.ModelSignal<TableFilters>;
85
87
  data: _angular_core.InputSignal<any[]>;
86
88
  columns: _angular_core.InputSignal<ColumnDef[]>;
@@ -89,6 +91,7 @@ declare class Table {
89
91
  showGridlines: _angular_core.InputSignalWithTransform<boolean, unknown>;
90
92
  stripedRows: _angular_core.InputSignalWithTransform<boolean, unknown>;
91
93
  selectableRows: _angular_core.InputSignalWithTransform<boolean, unknown>;
94
+ clickableRows: _angular_core.InputSignalWithTransform<boolean, unknown>;
92
95
  generalSearch: _angular_core.InputSignalWithTransform<boolean, unknown>;
93
96
  showFilters: _angular_core.InputSignalWithTransform<boolean, unknown>;
94
97
  loading: _angular_core.InputSignalWithTransform<boolean, unknown>;
@@ -139,6 +142,7 @@ declare class Table {
139
142
  toggleRow(row: any): void;
140
143
  toggleAllRowsOnPage(): void;
141
144
  getProperty(obj: any, key: string): any;
145
+ getEntityPreviewData(row: any, col: ColumnDef): EntityData | null;
142
146
  tabChanged(tab: any): void;
143
147
  onTablePage(event: TablePageEvent): void;
144
148
  handleLazyLoad(event: any): void;
@@ -148,12 +152,22 @@ declare class Table {
148
152
  resolveActionLoading(action: TableAction, row: any): boolean | undefined;
149
153
  onColumnReorder(event: any): void;
150
154
  onRowReorder(event: any): void;
155
+ onRowClick(event: MouseEvent, row: any): void;
151
156
  protected updatePagingFromEvent(event: any): void;
152
157
  protected emitLazyLoad(event: any): void;
153
158
  exportCSV(): void;
154
159
  rowAction(event: Event, action: TableAction, row: any): void;
160
+ private buildUserEntityData;
161
+ private buildStatusEntityData;
162
+ /**
163
+ * Gets the entity data for an 'entity' type column.
164
+ * The row data is expected to already be in EntityData format.
165
+ * Automatically hides entity name and configures User entities
166
+ * to show only avatar + displayName.
167
+ */
168
+ getEntityColumnData(row: any, col: ColumnDef): EntityData | null;
155
169
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<Table, never>;
156
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<Table, "mt-table", never, { "filters": { "alias": "filters"; "required": false; "isSignal": true; }; "data": { "alias": "data"; "required": true; "isSignal": true; }; "columns": { "alias": "columns"; "required": true; "isSignal": true; }; "rowActions": { "alias": "rowActions"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "showGridlines": { "alias": "showGridlines"; "required": false; "isSignal": true; }; "stripedRows": { "alias": "stripedRows"; "required": false; "isSignal": true; }; "selectableRows": { "alias": "selectableRows"; "required": false; "isSignal": true; }; "generalSearch": { "alias": "generalSearch"; "required": false; "isSignal": true; }; "showFilters": { "alias": "showFilters"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "updating": { "alias": "updating"; "required": false; "isSignal": true; }; "lazy": { "alias": "lazy"; "required": false; "isSignal": true; }; "lazyTotalRecords": { "alias": "lazyTotalRecords"; "required": false; "isSignal": true; }; "reorderableColumns": { "alias": "reorderableColumns"; "required": false; "isSignal": true; }; "reorderableRows": { "alias": "reorderableRows"; "required": false; "isSignal": true; }; "dataKey": { "alias": "dataKey"; "required": false; "isSignal": true; }; "exportable": { "alias": "exportable"; "required": false; "isSignal": true; }; "exportFilename": { "alias": "exportFilename"; "required": false; "isSignal": true; }; "tabs": { "alias": "tabs"; "required": false; "isSignal": true; }; "tabsOptionLabel": { "alias": "tabsOptionLabel"; "required": false; "isSignal": true; }; "tabsOptionValue": { "alias": "tabsOptionValue"; "required": false; "isSignal": true; }; "activeTab": { "alias": "activeTab"; "required": false; "isSignal": true; }; "actions": { "alias": "actions"; "required": false; "isSignal": true; }; "paginatorPosition": { "alias": "paginatorPosition"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "currentPage": { "alias": "currentPage"; "required": false; "isSignal": true; }; "first": { "alias": "first"; "required": false; "isSignal": true; }; "filterTerm": { "alias": "filterTerm"; "required": false; "isSignal": true; }; }, { "selectionChange": "selectionChange"; "cellChange": "cellChange"; "lazyLoad": "lazyLoad"; "columnReorder": "columnReorder"; "rowReorder": "rowReorder"; "filters": "filtersChange"; "activeTab": "activeTabChange"; "onTabChange": "onTabChange"; "pageSize": "pageSizeChange"; "currentPage": "currentPageChange"; "first": "firstChange"; "filterTerm": "filterTermChange"; }, ["captionStartContent", "captionEndContent", "emptyContent"], never, true, never>;
170
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<Table, "mt-table", never, { "filters": { "alias": "filters"; "required": false; "isSignal": true; }; "data": { "alias": "data"; "required": true; "isSignal": true; }; "columns": { "alias": "columns"; "required": true; "isSignal": true; }; "rowActions": { "alias": "rowActions"; "required": false; "isSignal": true; }; "size": { "alias": "size"; "required": false; "isSignal": true; }; "showGridlines": { "alias": "showGridlines"; "required": false; "isSignal": true; }; "stripedRows": { "alias": "stripedRows"; "required": false; "isSignal": true; }; "selectableRows": { "alias": "selectableRows"; "required": false; "isSignal": true; }; "clickableRows": { "alias": "clickableRows"; "required": false; "isSignal": true; }; "generalSearch": { "alias": "generalSearch"; "required": false; "isSignal": true; }; "showFilters": { "alias": "showFilters"; "required": false; "isSignal": true; }; "loading": { "alias": "loading"; "required": false; "isSignal": true; }; "updating": { "alias": "updating"; "required": false; "isSignal": true; }; "lazy": { "alias": "lazy"; "required": false; "isSignal": true; }; "lazyTotalRecords": { "alias": "lazyTotalRecords"; "required": false; "isSignal": true; }; "reorderableColumns": { "alias": "reorderableColumns"; "required": false; "isSignal": true; }; "reorderableRows": { "alias": "reorderableRows"; "required": false; "isSignal": true; }; "dataKey": { "alias": "dataKey"; "required": false; "isSignal": true; }; "exportable": { "alias": "exportable"; "required": false; "isSignal": true; }; "exportFilename": { "alias": "exportFilename"; "required": false; "isSignal": true; }; "tabs": { "alias": "tabs"; "required": false; "isSignal": true; }; "tabsOptionLabel": { "alias": "tabsOptionLabel"; "required": false; "isSignal": true; }; "tabsOptionValue": { "alias": "tabsOptionValue"; "required": false; "isSignal": true; }; "activeTab": { "alias": "activeTab"; "required": false; "isSignal": true; }; "actions": { "alias": "actions"; "required": false; "isSignal": true; }; "paginatorPosition": { "alias": "paginatorPosition"; "required": false; "isSignal": true; }; "pageSize": { "alias": "pageSize"; "required": false; "isSignal": true; }; "currentPage": { "alias": "currentPage"; "required": false; "isSignal": true; }; "first": { "alias": "first"; "required": false; "isSignal": true; }; "filterTerm": { "alias": "filterTerm"; "required": false; "isSignal": true; }; }, { "selectionChange": "selectionChange"; "cellChange": "cellChange"; "lazyLoad": "lazyLoad"; "columnReorder": "columnReorder"; "rowReorder": "rowReorder"; "rowClick": "rowClick"; "filters": "filtersChange"; "activeTab": "activeTabChange"; "onTabChange": "onTabChange"; "pageSize": "pageSizeChange"; "currentPage": "currentPageChange"; "first": "firstChange"; "filterTerm": "filterTermChange"; }, ["captionStartContent", "captionEndContent", "emptyContent"], never, true, never>;
157
171
  }
158
172
 
159
173
  declare class TableFilter implements ControlValueAccessor {