@toolbox-web/grid-angular 1.4.0 → 1.4.1

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@toolbox-web/grid-angular",
3
- "version": "1.4.0",
3
+ "version": "1.4.1",
4
4
  "description": "Angular adapter for @toolbox-web/grid data grid component",
5
5
  "type": "module",
6
6
  "keywords": [
@@ -35,6 +35,7 @@ export { PluginFactory, clearFeatureRegistry, createPluginFromFeature, getFeatur
35
35
  * column = input<unknown>();
36
36
  * }
37
37
  * ```
38
+ * @since 0.11.0
38
39
  */
39
40
  interface CellRenderer<TRow = unknown, TValue = unknown> {
40
41
  /** The cell value - use `input<TValue>()` or `input.required<TValue>()` */
@@ -78,6 +79,7 @@ interface CellRenderer<TRow = unknown, TValue = unknown> {
78
79
  * cancel = output<void>();
79
80
  * }
80
81
  * ```
82
+ * @since 0.11.0
81
83
  */
82
84
  interface CellEditor<TRow = unknown, TValue = unknown> extends CellRenderer<TRow, TValue> {
83
85
  /** Emit to commit the new value - use `output<TValue>()` */
@@ -120,6 +122,7 @@ interface CellEditor<TRow = unknown, TValue = unknown> extends CellRenderer<TRow
120
122
  * params = input.required<FilterPanelParams>();
121
123
  * }
122
124
  * ```
125
+ * @since 0.12.0
123
126
  */
124
127
  interface FilterPanel {
125
128
  /** The filter panel parameters — use `input.required<FilterPanelParams>()` */
@@ -148,6 +151,7 @@ interface FilterPanel {
148
151
  * }
149
152
  * };
150
153
  * ```
154
+ * @since 0.10.0
151
155
  */
152
156
  interface TypeDefault<TRow = unknown> {
153
157
  /** Format function for cell display */
@@ -198,6 +202,7 @@ interface TypeDefault<TRow = unknown> {
198
202
  * },
199
203
  * ];
200
204
  * ```
205
+ * @since 0.3.0
201
206
  */
202
207
  interface ColumnConfig<TRow = unknown> extends Omit<ColumnConfig$1<TRow>, 'renderer' | 'editor' | 'headerRenderer' | 'headerLabelRenderer'> {
203
208
  /**
@@ -240,6 +245,7 @@ interface ColumnConfig<TRow = unknown> extends Omit<ColumnConfig$1<TRow>, 'rende
240
245
  * plugins: [...],
241
246
  * };
242
247
  * ```
248
+ * @since 0.3.0
243
249
  */
244
250
  interface GridConfig<TRow = unknown> extends Omit<GridConfig$1<TRow>, 'columns' | 'typeDefaults' | 'loadingRenderer'> {
245
251
  columns?: ColumnConfig<TRow>[];
@@ -261,6 +267,7 @@ interface GridConfig<TRow = unknown> extends Omit<GridConfig$1<TRow>, 'columns'
261
267
  *
262
268
  * Also checks if it's an ES6 class (vs function) by inspecting the
263
269
  * string representation.
270
+ * @since 0.3.0
264
271
  */
265
272
  declare function isComponentClass(value: unknown): value is Type<unknown>;
266
273
 
@@ -281,6 +288,7 @@ declare function isComponentClass(value: unknown): value is Type<unknown>;
281
288
  /**
282
289
  * Hook called when an editor host is mounted. Returning a function
283
290
  * registers a teardown that runs when the editor is released.
291
+ * @since 1.4.0
284
292
  */
285
293
  type EditorMountHook = (ctx: {
286
294
  container: HTMLElement;
@@ -291,6 +299,7 @@ type EditorMountHook = (ctx: {
291
299
  * (e.g. `features/editing`) on import.
292
300
  *
293
301
  * @internal Plugin API
302
+ * @since 1.4.0
294
303
  */
295
304
  declare function registerEditorMountHook(hook: EditorMountHook): void;
296
305
  /**
@@ -300,6 +309,7 @@ declare function registerEditorMountHook(hook: EditorMountHook): void;
300
309
  * `(blur)` flush their pending value before the cell DOM is torn down by Tab /
301
310
  * programmatic row exit.
302
311
  * @internal
312
+ * @since 1.4.0
303
313
  */
304
314
  declare function makeFlushFocusedInput(host: HTMLElement): () => void;
305
315
 
@@ -325,6 +335,7 @@ declare function makeFlushFocusedInput(host: HTMLElement): () => void;
325
335
  * the adapter should expose, or undefined if no Angular template is registered
326
336
  * for that grid. Used by `features/master-detail` and `features/responsive`.
327
337
  * @internal
338
+ * @since 1.4.0
328
339
  */
329
340
  type RowRendererBridge = <TRow = unknown>(gridElement: HTMLElement, adapter: GridAdapter) => ((row: TRow, rowIndex: number) => HTMLElement) | undefined;
330
341
  /**
@@ -333,18 +344,21 @@ type RowRendererBridge = <TRow = unknown>(gridElement: HTMLElement, adapter: Gri
333
344
  * (so the adapter does not depend on filtering types) and returns the
334
345
  * imperative `(container, params) => void` form required by core.
335
346
  * @internal
347
+ * @since 1.4.0
336
348
  */
337
349
  type FilterPanelTypeDefaultBridge = (rendererValue: unknown, adapter: GridAdapter) => NonNullable<TypeDefault$1['filterPanelRenderer']> | undefined;
338
350
  /**
339
351
  * Install the master-detail row-renderer bridge. Called once on import by
340
352
  * `@toolbox-web/grid-angular/features/master-detail`.
341
353
  * @internal Plugin API
354
+ * @since 1.4.0
342
355
  */
343
356
  declare function registerDetailRendererBridge(bridge: RowRendererBridge): void;
344
357
  /**
345
358
  * Install the responsive-card row-renderer bridge. Called once on import by
346
359
  * `@toolbox-web/grid-angular/features/responsive`.
347
360
  * @internal Plugin API
361
+ * @since 1.4.0
348
362
  */
349
363
  declare function registerResponsiveCardRendererBridge(bridge: RowRendererBridge): void;
350
364
  /**
@@ -353,9 +367,11 @@ declare function registerResponsiveCardRendererBridge(bridge: RowRendererBridge)
353
367
  * type-default and grid-config-level component-class filterPanelRenderers are
354
368
  * silently dropped — same precondition as the FilteringPlugin (TBW031).
355
369
  * @internal Plugin API
370
+ * @since 1.4.0
356
371
  */
357
372
  declare function registerFilterPanelTypeDefaultBridge(bridge: FilterPanelTypeDefaultBridge): void;
358
373
 
374
+ /** @since 0.11.0 */
359
375
  declare class GridAdapter implements FrameworkAdapter {
360
376
  private injector;
361
377
  private appRef;
@@ -664,6 +680,7 @@ declare class GridAdapter implements FrameworkAdapter {
664
680
  * },
665
681
  * };
666
682
  * ```
683
+ * @since 0.11.0
667
684
  */
668
685
  interface TypeDefaultRegistration<TRow = unknown> {
669
686
  /** Angular component class for rendering cells of this type */
@@ -683,6 +700,7 @@ interface TypeDefaultRegistration<TRow = unknown> {
683
700
  }
684
701
  /**
685
702
  * Injection token for providing type defaults at app level.
703
+ * @since 0.3.0
686
704
  */
687
705
  declare const GRID_TYPE_DEFAULTS: InjectionToken<Record<string, TypeDefaultRegistration<unknown>>>;
688
706
  /**
@@ -720,6 +738,7 @@ declare const GRID_TYPE_DEFAULTS: InjectionToken<Record<string, TypeDefaultRegis
720
738
  * }
721
739
  * }
722
740
  * ```
741
+ * @since 0.3.0
723
742
  */
724
743
  declare class GridTypeRegistry {
725
744
  private readonly defaults;
@@ -776,6 +795,7 @@ declare class GridTypeRegistry {
776
795
  * ]
777
796
  * };
778
797
  * ```
798
+ * @since 0.3.0
779
799
  */
780
800
  declare function provideGridTypeDefaults(defaults: Record<string, TypeDefaultRegistration>): EnvironmentProviders;
781
801
 
@@ -788,6 +808,7 @@ declare function provideGridTypeDefaults(defaults: Record<string, TypeDefaultReg
788
808
 
789
809
  /**
790
810
  * Injection token for providing icon overrides at app level.
811
+ * @since 0.8.0
791
812
  */
792
813
  declare const GRID_ICONS: InjectionToken<Partial<GridIcons>>;
793
814
  /**
@@ -820,6 +841,7 @@ declare const GRID_ICONS: InjectionToken<Partial<GridIcons>>;
820
841
  * }
821
842
  * }
822
843
  * ```
844
+ * @since 0.8.0
823
845
  */
824
846
  declare class GridIconRegistry {
825
847
  private readonly icons;
@@ -890,11 +912,13 @@ declare class GridIconRegistry {
890
912
  * ]
891
913
  * };
892
914
  * ```
915
+ * @since 0.8.0
893
916
  */
894
917
  declare function provideGridIcons(icons: Partial<GridIcons>): EnvironmentProviders;
895
918
 
896
919
  /**
897
920
  * Return type for injectGrid function.
921
+ * @since 0.6.0
898
922
  */
899
923
  interface InjectGridReturn<TRow = unknown> {
900
924
  /** Direct access to the typed grid element */
@@ -965,6 +989,7 @@ interface InjectGridReturn<TRow = unknown> {
965
989
  * Defaults to `'tbw-grid'` (first grid in the component). Use when the
966
990
  * component contains multiple grids, e.g. `'tbw-grid.primary'` or `'#my-grid'`.
967
991
  * @returns Object with grid access methods and state signals
992
+ * @since 0.6.0
968
993
  */
969
994
  declare function injectGrid<TRow = unknown>(selector?: string): InjectGridReturn<TRow>;
970
995
 
@@ -988,6 +1013,7 @@ declare function injectGrid<TRow = unknown>(selector?: string): InjectGridReturn
988
1013
 
989
1014
  /**
990
1015
  * Feature names supported by the Grid directive.
1016
+ * @since 0.6.0
991
1017
  */
992
1018
  type FeatureName = 'selection' | 'editing' | 'clipboard' | 'contextMenu' | 'multiSort' | 'filtering' | 'reorderColumns' | 'visibility' | 'pinnedColumns' | 'groupingColumns' | 'columnVirtualization' | 'reorderRows' | 'rowDragDrop' | 'groupingRows' | 'pinnedRows' | 'tree' | 'masterDetail' | 'responsive' | 'undoRedo' | 'export' | 'print' | 'pivot' | 'serverSide' | 'tooltip';
993
1019
 
@@ -1040,6 +1066,7 @@ type FeatureName = 'selection' | 'editing' | 'clipboard' | 'contextMenu' | 'mult
1040
1066
  * `@toolbox-web/grid-angular/features/filtering` in v2.0.0; the deprecated
1041
1067
  * re-export from the main `@toolbox-web/grid-angular` entry will be removed at
1042
1068
  * the same time. Consumers should already be importing from the feature entry.
1069
+ * @since 0.13.0
1043
1070
  */
1044
1071
  declare abstract class BaseFilterPanel implements FilterPanel {
1045
1072
  /**
@@ -1153,6 +1180,7 @@ declare abstract class BaseFilterPanel implements FilterPanel {
1153
1180
  * `@toolbox-web/grid-angular/features/editing` in v2.0.0; the deprecated
1154
1181
  * re-export from the main `@toolbox-web/grid-angular` entry will be removed at
1155
1182
  * the same time. Consumers should already be importing from the feature entry.
1183
+ * @since 0.5.0
1156
1184
  */
1157
1185
  declare abstract class BaseGridEditor<TRow = unknown, TValue = unknown> {
1158
1186
  protected readonly elementRef: ElementRef<any>;
@@ -1344,6 +1372,7 @@ declare abstract class BaseGridEditor<TRow = unknown, TValue = unknown> {
1344
1372
  * `@toolbox-web/grid-angular/features/editing` in v2.0.0; the deprecated
1345
1373
  * re-export from the main `@toolbox-web/grid-angular` entry will be removed at
1346
1374
  * the same time. Consumers should already be importing from the feature entry.
1375
+ * @since 0.13.0
1347
1376
  */
1348
1377
  declare abstract class BaseGridEditorCVA<TRow = unknown, TValue = unknown> extends BaseGridEditor<TRow, TValue> implements ControlValueAccessor {
1349
1378
  /** Internal onChange callback registered by the form control. */
@@ -1410,6 +1439,7 @@ declare abstract class BaseGridEditorCVA<TRow = unknown, TValue = unknown> exten
1410
1439
  * - `'below-right'` — panel appears below the cell, right-aligned
1411
1440
  * - `'over-top-left'` — panel top-left corner aligns with cell top-left corner (opens downward)
1412
1441
  * - `'over-bottom-left'` — panel bottom-left corner aligns with cell bottom-left corner (opens upward)
1442
+ * @since 0.13.0
1413
1443
  */
1414
1444
  type OverlayPosition = 'below' | 'above' | 'below-right' | 'over-top-left' | 'over-bottom-left';
1415
1445
  /**
@@ -1513,6 +1543,7 @@ type OverlayPosition = 'below' | 'above' | 'below-right' | 'over-top-left' | 'ov
1513
1543
  * the deprecated re-export from the main `@toolbox-web/grid-angular` entry
1514
1544
  * will be removed at the same time. Consumers should already be importing
1515
1545
  * from the feature entry.
1546
+ * @since 0.13.0
1516
1547
  */
1517
1548
  declare abstract class BaseOverlayEditor<TRow = unknown, TValue = unknown> extends BaseGridEditor<TRow, TValue> {
1518
1549
  private readonly _elementRef;
@@ -1675,6 +1706,7 @@ declare abstract class BaseOverlayEditor<TRow = unknown, TValue = unknown> exten
1675
1706
  /**
1676
1707
  * Context object passed to the cell editor template.
1677
1708
  * Contains the cell value, row data, column configuration, and commit/cancel functions.
1709
+ * @since 0.1.0
1678
1710
  */
1679
1711
  interface GridEditorContext<TValue = unknown, TRow = unknown> {
1680
1712
  /** The cell value for this column */
@@ -1778,6 +1810,7 @@ interface GridEditorContext<TValue = unknown, TRow = unknown> {
1778
1810
  * re-exports from the main `@toolbox-web/grid-angular` entry will be removed
1779
1811
  * at the same time. Consumers should already be importing from the feature
1780
1812
  * entry.
1813
+ * @since 0.1.0
1781
1814
  */
1782
1815
  declare class GridColumnEditor {
1783
1816
  private elementRef;
@@ -1799,6 +1832,7 @@ declare class GridColumnEditor {
1799
1832
  /**
1800
1833
  * Context object passed to the cell renderer template.
1801
1834
  * Contains the cell value, row data, and column configuration.
1835
+ * @since 0.1.0
1802
1836
  */
1803
1837
  interface GridCellContext<TValue = unknown, TRow = unknown> {
1804
1838
  /** The cell value for this column */
@@ -1845,6 +1879,7 @@ interface GridCellContext<TValue = unknown, TRow = unknown> {
1845
1879
  * ```
1846
1880
  *
1847
1881
  * @category Directive
1882
+ * @since 0.1.0
1848
1883
  */
1849
1884
  declare class GridColumnView {
1850
1885
  private elementRef;
@@ -1892,6 +1927,7 @@ declare class GridColumnView {
1892
1927
  * ```
1893
1928
  *
1894
1929
  * @category Directive
1930
+ * @since 0.13.0
1895
1931
  */
1896
1932
  declare class TbwGridColumn {
1897
1933
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<TbwGridColumn, never>;
@@ -1901,6 +1937,7 @@ declare class TbwGridColumn {
1901
1937
  /**
1902
1938
  * Context object passed to the detail renderer template.
1903
1939
  * Contains the row data for the expanded detail view.
1940
+ * @since 0.1.0
1904
1941
  */
1905
1942
  interface GridDetailContext<TRow = unknown> {
1906
1943
  /** The row data (implicit binding for let-row) */
@@ -1911,6 +1948,7 @@ interface GridDetailContext<TRow = unknown> {
1911
1948
  /**
1912
1949
  * Gets the detail template registered for a given grid element.
1913
1950
  * Used by AngularGridAdapter to retrieve templates at render time.
1951
+ * @since 0.1.0
1914
1952
  */
1915
1953
  declare function getDetailTemplate(gridElement: HTMLElement): TemplateRef<GridDetailContext> | undefined;
1916
1954
  /**
@@ -1961,6 +1999,7 @@ declare function getDetailTemplate(gridElement: HTMLElement): TemplateRef<GridDe
1961
1999
  * ```
1962
2000
  *
1963
2001
  * @category Directive
2002
+ * @since 0.1.0
1964
2003
  */
1965
2004
  declare class GridDetailView {
1966
2005
  private elementRef;
@@ -1986,6 +2025,7 @@ declare class GridDetailView {
1986
2025
  /**
1987
2026
  * Context provided to the grid containing form-related information.
1988
2027
  * This can be accessed by other directives to get form controls.
2028
+ * @since 0.5.0
1989
2029
  */
1990
2030
  interface FormArrayContext {
1991
2031
  /** Get the row data at a specific index */
@@ -2052,6 +2092,7 @@ interface FormArrayContext {
2052
2092
  /**
2053
2093
  * Gets the FormArrayContext from a grid element, if present.
2054
2094
  * @internal
2095
+ * @since 0.5.0
2055
2096
  */
2056
2097
  declare function getFormArrayContext(gridElement: HTMLElement): FormArrayContext | undefined;
2057
2098
  /**
@@ -2120,6 +2161,7 @@ declare function getFormArrayContext(gridElement: HTMLElement): FormArrayContext
2120
2161
  * re-exports from the main `@toolbox-web/grid-angular` entry will be removed
2121
2162
  * at the same time. Consumers should already be importing from the feature
2122
2163
  * entry.
2164
+ * @since 0.5.0
2123
2165
  */
2124
2166
  declare class GridFormArray implements OnInit, OnDestroy {
2125
2167
  #private;
@@ -2184,6 +2226,7 @@ declare class GridFormArray implements OnInit, OnDestroy {
2184
2226
  * ```
2185
2227
  *
2186
2228
  * @category Directive
2229
+ * @since 0.13.0
2187
2230
  */
2188
2231
  declare class TbwGridHeader {
2189
2232
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<TbwGridHeader, never>;
@@ -2193,6 +2236,7 @@ declare class TbwGridHeader {
2193
2236
  /**
2194
2237
  * Gets the FormArrayContext from a grid element, if present.
2195
2238
  * @internal
2239
+ * @since 0.11.0
2196
2240
  */
2197
2241
  declare function getLazyFormContext(gridElement: HTMLElement): FormArrayContext | undefined;
2198
2242
  /**
@@ -2203,10 +2247,12 @@ declare function getLazyFormContext(gridElement: HTMLElement): FormArrayContext
2203
2247
  * @param row The row data object
2204
2248
  * @param rowIndex The row index in the grid
2205
2249
  * @returns A FormGroup for the row (only include editable fields)
2250
+ * @since 0.11.0
2206
2251
  */
2207
2252
  type LazyFormFactory<TRow = unknown> = (row: TRow, rowIndex: number) => FormGroup;
2208
2253
  /**
2209
2254
  * Event emitted when a row's form values have changed.
2255
+ * @since 0.11.0
2210
2256
  */
2211
2257
  interface RowFormChangeEvent<TRow = unknown> {
2212
2258
  /** The row index */
@@ -2306,6 +2352,7 @@ interface RowFormChangeEvent<TRow = unknown> {
2306
2352
  * re-exports from the main `@toolbox-web/grid-angular` entry will be removed
2307
2353
  * at the same time. Consumers should already be importing from the feature
2308
2354
  * entry.
2355
+ * @since 0.11.0
2309
2356
  */
2310
2357
  declare class GridLazyForm<TRow = unknown> implements OnInit, OnDestroy {
2311
2358
  #private;
@@ -2403,6 +2450,7 @@ declare class GridLazyForm<TRow = unknown> implements OnInit, OnDestroy {
2403
2450
  * </ng-template>
2404
2451
  * </tbw-grid-responsive-card>
2405
2452
  * ```
2453
+ * @since 0.4.0
2406
2454
  */
2407
2455
  interface GridResponsiveCardContext<TRow = unknown> {
2408
2456
  /**
@@ -2423,6 +2471,7 @@ interface GridResponsiveCardContext<TRow = unknown> {
2423
2471
  *
2424
2472
  * @param gridElement - The grid element to look up
2425
2473
  * @returns The template reference or undefined if not found
2474
+ * @since 0.4.0
2426
2475
  */
2427
2476
  declare function getResponsiveCardTemplate(gridElement: HTMLElement): TemplateRef<GridResponsiveCardContext> | undefined;
2428
2477
  /**
@@ -2457,6 +2506,7 @@ declare function getResponsiveCardTemplate(gridElement: HTMLElement): TemplateRe
2457
2506
  *
2458
2507
  * @see ResponsivePlugin
2459
2508
  * @category Directive
2509
+ * @since 0.4.0
2460
2510
  */
2461
2511
  declare class GridResponsiveCard<TRow = unknown> {
2462
2512
  private elementRef;
@@ -2517,6 +2567,7 @@ declare class GridResponsiveCard<TRow = unknown> {
2517
2567
  * ```
2518
2568
  *
2519
2569
  * @category Directive
2570
+ * @since 0.13.0
2520
2571
  */
2521
2572
  declare class TbwGridToolButtons {
2522
2573
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<TbwGridToolButtons, never>;
@@ -2526,6 +2577,7 @@ declare class TbwGridToolButtons {
2526
2577
  /**
2527
2578
  * Context object passed to the tool panel template.
2528
2579
  * Provides access to grid-related information for the panel content.
2580
+ * @since 0.1.0
2529
2581
  */
2530
2582
  interface GridToolPanelContext {
2531
2583
  /** The grid element (implicit binding) */
@@ -2591,6 +2643,7 @@ interface GridToolPanelContext {
2591
2643
  * ```
2592
2644
  *
2593
2645
  * @category Directive
2646
+ * @since 0.1.0
2594
2647
  */
2595
2648
  declare class GridToolPanel {
2596
2649
  private elementRef;
@@ -2647,6 +2700,7 @@ declare class GridToolPanel {
2647
2700
  * const cols2 = ['id:number', 'name:string', 'email'];
2648
2701
  * const cols3 = [{ field: 'id' }, { field: 'name' }, { field: 'email' }];
2649
2702
  * ```
2703
+ * @since 1.4.0
2650
2704
  */
2651
2705
  type ColumnShorthand<TRow = unknown> = string | ColumnConfig$1<TRow>;
2652
2706
  /**
@@ -2658,6 +2712,7 @@ type ColumnShorthand<TRow = unknown> = string | ColumnConfig$1<TRow>;
2658
2712
  *
2659
2713
  * @param shorthand - The shorthand string (e.g., 'name', 'salary:number')
2660
2714
  * @returns A ColumnConfig object
2715
+ * @since 1.4.0
2661
2716
  */
2662
2717
  declare function parseColumnShorthand<TRow = unknown>(shorthand: string): ColumnConfig$1<TRow>;
2663
2718
  /**
@@ -2665,18 +2720,22 @@ declare function parseColumnShorthand<TRow = unknown>(shorthand: string): Column
2665
2720
  *
2666
2721
  * @param columns - Array of column shorthands (strings or ColumnConfig objects)
2667
2722
  * @returns Array of ColumnConfig objects
2723
+ * @since 1.4.0
2668
2724
  */
2669
2725
  declare function normalizeColumns<TRow = unknown>(columns: ColumnShorthand<TRow>[]): ColumnConfig$1<TRow>[];
2670
2726
  /**
2671
2727
  * Apply column defaults to a list of columns. Individual column properties
2672
2728
  * override defaults.
2729
+ * @since 1.4.0
2673
2730
  */
2674
2731
  declare function applyColumnDefaults<TRow = unknown>(columns: ColumnConfig$1<TRow>[], defaults: Partial<ColumnConfig$1<TRow>> | undefined): ColumnConfig$1<TRow>[];
2675
- /** Check if an array of columns contains any shorthand strings. */
2732
+ /** Check if an array of columns contains any shorthand strings. * @since 1.4.0
2733
+ */
2676
2734
  declare function hasColumnShorthands<TRow>(columns: ColumnShorthand<TRow>[]): boolean;
2677
2735
 
2678
2736
  /**
2679
2737
  * Event detail for cell commit events.
2738
+ * @since 0.1.1
2680
2739
  */
2681
2740
  interface CellCommitEvent<TRow = unknown, TValue = unknown> {
2682
2741
  /** The row data object */
@@ -2696,6 +2755,7 @@ interface CellCommitEvent<TRow = unknown, TValue = unknown> {
2696
2755
  }
2697
2756
  /**
2698
2757
  * Event detail for row commit events (bulk editing).
2758
+ * @since 0.1.1
2699
2759
  */
2700
2760
  interface RowCommitEvent<TRow = unknown> {
2701
2761
  /** The row data object */
@@ -2744,6 +2804,7 @@ interface RowCommitEvent<TRow = unknown> {
2744
2804
  * - Handles cleanup on destruction
2745
2805
  *
2746
2806
  * @category Directive
2807
+ * @since 0.1.0
2747
2808
  */
2748
2809
  declare class Grid implements OnInit, AfterContentInit, OnDestroy {
2749
2810
  private elementRef;
@@ -3907,6 +3968,7 @@ declare class Grid implements OnInit, AfterContentInit, OnDestroy {
3907
3968
  * This provides better ergonomics in templates without requiring explicit type annotations.
3908
3969
  *
3909
3970
  * @internal Use `GridCellContext` in application code for stricter typing.
3971
+ * @since 0.1.1
3910
3972
  */
3911
3973
  interface StructuralCellContext<TValue = any, TRow = any> {
3912
3974
  /** The cell value for this column */
@@ -3923,6 +3985,7 @@ interface StructuralCellContext<TValue = any, TRow = any> {
3923
3985
  * This provides better ergonomics in templates without requiring explicit type annotations.
3924
3986
  *
3925
3987
  * @internal Use `GridEditorContext` in application code for stricter typing.
3988
+ * @since 0.1.1
3926
3989
  */
3927
3990
  interface StructuralEditorContext<TValue = any, TRow = any> {
3928
3991
  /** The cell value for this column */
@@ -4001,6 +4064,7 @@ interface StructuralEditorContext<TValue = any, TRow = any> {
4001
4064
  * ```
4002
4065
  *
4003
4066
  * @category Directive
4067
+ * @since 0.1.1
4004
4068
  */
4005
4069
  declare class TbwRenderer implements OnDestroy {
4006
4070
  private template;
@@ -4076,6 +4140,7 @@ declare class TbwRenderer implements OnDestroy {
4076
4140
  * will be removed at the same time. Consumers should already be importing
4077
4141
  * from the feature entry. (`TbwRenderer` stays in the main entry — it is
4078
4142
  * editor-agnostic.)
4143
+ * @since 0.1.1
4079
4144
  */
4080
4145
  declare class TbwEditor implements OnDestroy {
4081
4146
  private template;
@@ -4123,6 +4188,7 @@ declare class TbwEditor implements OnDestroy {
4123
4188
 
4124
4189
  /**
4125
4190
  * Options for {@link provideGrid}.
4191
+ * @since 1.4.0
4126
4192
  */
4127
4193
  interface ProvideGridOptions {
4128
4194
  /** Type defaults to register globally. Equivalent to `provideGridTypeDefaults`. */
@@ -4139,6 +4205,7 @@ interface ProvideGridOptions {
4139
4205
  *
4140
4206
  * Equivalent to calling `provideGridTypeDefaults(options.typeDefaults)` and
4141
4207
  * `provideGridIcons(options.icons)` separately.
4208
+ * @since 1.4.0
4142
4209
  */
4143
4210
  declare function provideGrid(options?: ProvideGridOptions): EnvironmentProviders;
4144
4211
 
@@ -4169,6 +4236,7 @@ declare function provideGrid(options?: ProvideGridOptions): EnvironmentProviders
4169
4236
  * Context passed to template bridges.
4170
4237
  *
4171
4238
  * @internal
4239
+ * @since 1.4.0
4172
4240
  */
4173
4241
  interface TemplateBridgeContext {
4174
4242
  /** The `<tbw-grid>` element this directive is attached to. */
@@ -4183,6 +4251,7 @@ interface TemplateBridgeContext {
4183
4251
  * sequentially — they run concurrently.
4184
4252
  *
4185
4253
  * @internal
4254
+ * @since 1.4.0
4186
4255
  */
4187
4256
  type TemplateBridge = (ctx: TemplateBridgeContext) => void | Promise<void>;
4188
4257
  /**
@@ -4194,6 +4263,7 @@ type TemplateBridge = (ctx: TemplateBridgeContext) => void | Promise<void>;
4194
4263
  * by the JS loader.
4195
4264
  *
4196
4265
  * @internal
4266
+ * @since 1.4.0
4197
4267
  */
4198
4268
  declare function registerTemplateBridge(bridge: TemplateBridge): void;
4199
4269
  /**
@@ -4202,6 +4272,7 @@ declare function registerTemplateBridge(bridge: TemplateBridge): void;
4202
4272
  * errors thrown by one bridge do not stop the others.
4203
4273
  *
4204
4274
  * @internal
4275
+ * @since 1.4.0
4205
4276
  */
4206
4277
  declare function runTemplateBridges(ctx: TemplateBridgeContext): void;
4207
4278
  /**
@@ -4215,6 +4286,7 @@ declare function runTemplateBridges(ctx: TemplateBridgeContext): void;
4215
4286
  * reference is fine — preprocessors typically clone-and-augment.
4216
4287
  *
4217
4288
  * @internal
4289
+ * @since 1.4.0
4218
4290
  */
4219
4291
  type FeatureConfigPreprocessor = (config: unknown, adapter: GridAdapter) => unknown;
4220
4292
  /**
@@ -4223,12 +4295,14 @@ type FeatureConfigPreprocessor = (config: unknown, adapter: GridAdapter) => unkn
4223
4295
  * a no-op).
4224
4296
  *
4225
4297
  * @internal
4298
+ * @since 1.4.0
4226
4299
  */
4227
4300
  declare function registerFeatureConfigPreprocessor(name: FeatureName, fn: FeatureConfigPreprocessor): void;
4228
4301
  /**
4229
4302
  * Look up the preprocessor for a feature, if any.
4230
4303
  *
4231
4304
  * @internal
4305
+ * @since 1.4.0
4232
4306
  */
4233
4307
  declare function getFeatureConfigPreprocessor(name: FeatureName): FeatureConfigPreprocessor | undefined;
4234
4308
 
@@ -4268,6 +4342,7 @@ type ClaimableEventName = keyof DataGridEventMap<unknown>;
4268
4342
  * signal inside it establishes reactive dependency tracking — the effect
4269
4343
  * re-runs when the directive's input changes.
4270
4344
  * @internal
4345
+ * @since 1.4.0
4271
4346
  */
4272
4347
  type FeatureConfigGetter = () => unknown;
4273
4348
  /**
@@ -4275,12 +4350,14 @@ type FeatureConfigGetter = () => unknown;
4275
4350
  * the {@link Grid} directive will then use {@link getFeatureClaim} during
4276
4351
  * plugin creation instead of reading its own deprecated input.
4277
4352
  * @internal
4353
+ * @since 1.4.0
4278
4354
  */
4279
4355
  declare function registerFeatureClaim(grid: HTMLElement, name: FeatureName, getConfig: FeatureConfigGetter): void;
4280
4356
  /**
4281
4357
  * Look up a feature claim. Returns the registered config getter, or
4282
4358
  * `undefined` if no directive owns this feature on this element.
4283
4359
  * @internal
4360
+ * @since 1.4.0
4284
4361
  */
4285
4362
  declare function getFeatureClaim(grid: HTMLElement, name: FeatureName): FeatureConfigGetter | undefined;
4286
4363
  /**
@@ -4288,6 +4365,7 @@ declare function getFeatureClaim(grid: HTMLElement, name: FeatureName): FeatureC
4288
4365
  * that, if the directive is removed (e.g. via `*ngIf`) but the host
4289
4366
  * `<tbw-grid>` survives, {@link Grid}'s deprecated input takes back over.
4290
4367
  * @internal
4368
+ * @since 1.4.0
4291
4369
  */
4292
4370
  declare function unregisterFeatureClaim(grid: HTMLElement, name: FeatureName): void;
4293
4371
  /**
@@ -4295,17 +4373,20 @@ declare function unregisterFeatureClaim(grid: HTMLElement, name: FeatureName): v
4295
4373
  * `setupEventListeners` skips wiring its own deprecated `output()` for any
4296
4374
  * claimed event — the directive owns the listener and the emit.
4297
4375
  * @internal
4376
+ * @since 1.4.0
4298
4377
  */
4299
4378
  declare function claimEvent(grid: HTMLElement, eventName: ClaimableEventName): void;
4300
4379
  /**
4301
4380
  * Returns true if a directive has claimed this event on this grid element.
4302
4381
  * @internal
4382
+ * @since 1.4.0
4303
4383
  */
4304
4384
  declare function isEventClaimed(grid: HTMLElement, eventName: ClaimableEventName): boolean;
4305
4385
  /**
4306
4386
  * Drop an event claim. Pair with {@link claimEvent} in a directive's
4307
4387
  * `ngOnDestroy`.
4308
4388
  * @internal
4389
+ * @since 1.4.0
4309
4390
  */
4310
4391
  declare function unclaimEvent(grid: HTMLElement, eventName: ClaimableEventName): void;
4311
4392