@siemens/ngx-datatable
Version:
ngx-datatable is an Angular table grid component for presenting large and complex data.
69 lines (68 loc) • 4.86 kB
TypeScript
import { OnChanges, PipeTransform, TemplateRef } from '@angular/core';
import { CellContext, HeaderCellContext, Row } from '../../types/public.types';
import { TableColumn, TableColumnProp } from '../../types/table-column.type';
import * as i0 from "@angular/core";
export declare class DataTableColumnDirective<TRow extends Row> implements TableColumn, OnChanges {
private columnChangesService;
name?: string;
prop?: TableColumnProp;
bindAsUnsafeHtml?: boolean;
frozenLeft?: boolean;
frozenRight?: boolean;
flexGrow?: number;
resizeable?: boolean;
comparator?: (valueA: any, valueB: any, rowA: TRow, rowB: TRow, sortDir: 'desc' | 'asc') => number;
pipe?: PipeTransform;
sortable?: boolean;
draggable?: boolean;
canAutoResize?: boolean;
minWidth?: number;
width?: number;
maxWidth?: number;
checkboxable?: boolean;
headerCheckboxable?: boolean;
headerClass?: string | ((data: {
column: TableColumn;
}) => string | Record<string, boolean>);
cellClass?: string | ((data: {
row: TRow;
group?: TRow[];
column: TableColumn<TRow>;
value: any;
rowHeight: number;
}) => string | Record<string, boolean>);
isTreeColumn?: boolean;
treeLevelIndent?: number;
summaryFunc?: (cells: any[]) => any;
summaryTemplate?: TemplateRef<any>;
_cellTemplateInput?: TemplateRef<CellContext<TRow>>;
_cellTemplateQuery?: TemplateRef<CellContext<TRow>>;
get cellTemplate(): TemplateRef<CellContext<TRow>> | undefined;
_headerTemplateInput?: TemplateRef<HeaderCellContext>;
_headerTemplateQuery?: TemplateRef<HeaderCellContext>;
get headerTemplate(): TemplateRef<HeaderCellContext> | undefined;
_treeToggleTemplateInput?: TemplateRef<any>;
_treeToggleTemplateQuery?: TemplateRef<any>;
get treeToggleTemplate(): TemplateRef<any> | undefined;
_ghostCellTemplateInput?: TemplateRef<void>;
_ghostCellTemplateQuery?: TemplateRef<void>;
get ghostCellTemplate(): TemplateRef<void> | undefined;
private isFirstChange;
ngOnChanges(): void;
static ɵfac: i0.ɵɵFactoryDeclaration<DataTableColumnDirective<any>, never>;
static ɵdir: i0.ɵɵDirectiveDeclaration<DataTableColumnDirective<any>, "ngx-datatable-column", never, { "name": { "alias": "name"; "required": false; }; "prop": { "alias": "prop"; "required": false; }; "bindAsUnsafeHtml": { "alias": "bindAsUnsafeHtml"; "required": false; }; "frozenLeft": { "alias": "frozenLeft"; "required": false; }; "frozenRight": { "alias": "frozenRight"; "required": false; }; "flexGrow": { "alias": "flexGrow"; "required": false; }; "resizeable": { "alias": "resizeable"; "required": false; }; "comparator": { "alias": "comparator"; "required": false; }; "pipe": { "alias": "pipe"; "required": false; }; "sortable": { "alias": "sortable"; "required": false; }; "draggable": { "alias": "draggable"; "required": false; }; "canAutoResize": { "alias": "canAutoResize"; "required": false; }; "minWidth": { "alias": "minWidth"; "required": false; }; "width": { "alias": "width"; "required": false; }; "maxWidth": { "alias": "maxWidth"; "required": false; }; "checkboxable": { "alias": "checkboxable"; "required": false; }; "headerCheckboxable": { "alias": "headerCheckboxable"; "required": false; }; "headerClass": { "alias": "headerClass"; "required": false; }; "cellClass": { "alias": "cellClass"; "required": false; }; "isTreeColumn": { "alias": "isTreeColumn"; "required": false; }; "treeLevelIndent": { "alias": "treeLevelIndent"; "required": false; }; "summaryFunc": { "alias": "summaryFunc"; "required": false; }; "summaryTemplate": { "alias": "summaryTemplate"; "required": false; }; "_cellTemplateInput": { "alias": "cellTemplate"; "required": false; }; "_headerTemplateInput": { "alias": "headerTemplate"; "required": false; }; "_treeToggleTemplateInput": { "alias": "treeToggleTemplate"; "required": false; }; "_ghostCellTemplateInput": { "alias": "ghostCellTemplate"; "required": false; }; }, {}, ["_cellTemplateQuery", "_headerTemplateQuery", "_treeToggleTemplateQuery", "_ghostCellTemplateQuery"], never, true, never>;
static ngAcceptInputType_bindAsUnsafeHtml: unknown;
static ngAcceptInputType_frozenLeft: unknown;
static ngAcceptInputType_frozenRight: unknown;
static ngAcceptInputType_flexGrow: unknown;
static ngAcceptInputType_resizeable: unknown;
static ngAcceptInputType_sortable: unknown;
static ngAcceptInputType_draggable: unknown;
static ngAcceptInputType_canAutoResize: unknown;
static ngAcceptInputType_minWidth: unknown;
static ngAcceptInputType_width: unknown;
static ngAcceptInputType_maxWidth: unknown;
static ngAcceptInputType_checkboxable: unknown;
static ngAcceptInputType_headerCheckboxable: unknown;
static ngAcceptInputType_isTreeColumn: unknown;
}