import * as i0 from '@angular/core'; import { TemplateRef, AfterContentChecked, TrackByFunction, EventEmitter, QueryList, OnChanges } from '@angular/core'; import * as i7 from '@angular/common'; import * as i8 from 'primeng/table'; import * as i9 from '@ifsworld/granite-components'; import * as i10 from '@angular/cdk/table'; type GranitTableColumnAlign = 'start' | 'center' | 'end'; type GranitTableColumnSize = 'small' | 'medium' | 'large'; interface GraniteTableColumnInterface { name: string; title?: string; class?: string | string[]; headerClass?: string | string[]; textAlign?: GranitTableColumnAlign; size?: GranitTableColumnSize; } declare class GraniteTableColumnDirective implements GraniteTableColumnInterface { name: string; title?: string; class?: string | string[]; headerClass?: string | string[]; textAlign: GranitTableColumnAlign; size: GranitTableColumnSize; tableCellTemplateRef: TemplateRef; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } interface GraniteTableRowStylesInterface { condition: (row: any, rowIndex: number) => boolean; styles: { [key: string]: string; }; } declare class GraniteTableComponent implements AfterContentChecked { dataSource: T[]; horizontalScroll: boolean; trackBy: TrackByFunction; conditionalRowStyles: GraniteTableRowStylesInterface[]; readonly rowClick: EventEmitter; tableColumnsComponent: QueryList; readonly cellIdPrefix: string; _columns: GraniteTableColumnDirective[]; _displayedColumns: string[]; private cd; ngAfterContentChecked(): void; _trackColumnName(index: number, column: GraniteTableColumnDirective): string; handleRowClick(event: Event, row: T, rowIndex: number): void; getStyles(row: T, rowIndex: number): { [key: string]: string; }; private refreshData; static ɵfac: i0.ɵɵFactoryDeclaration, never>; static ɵcmp: i0.ɵɵComponentDeclaration, "granite-table", never, { "dataSource": { "alias": "dataSource"; "required": false; }; "horizontalScroll": { "alias": "horizontalScroll"; "required": false; }; "trackBy": { "alias": "trackBy"; "required": false; }; "conditionalRowStyles": { "alias": "conditionalRowStyles"; "required": false; }; }, { "rowClick": "rowClick"; }, ["tableColumnsComponent"], never, false, never>; } declare abstract class GraniteCell { id: string; column: GraniteTableColumnDirective; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class GraniteTableHeaderCellComponent extends GraniteCell { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class GraniteTableDataCellComponent extends GraniteCell { value: any; rowIndex: number; columnIndex: number; row: any; tableCellTemplateRef: TemplateRef; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } declare class GraniteCellAlignClassesDirective { graniteCellAlignClasses?: string | string[]; textAlign: GranitTableColumnAlign; get alignmentClass(): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class GraniteColumnSizeDirective implements OnChanges { graniteColumnSize: GranitTableColumnSize; get columnSizeClass(): string; private readonly sizeMap; ngOnChanges(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } declare class GraniteTableModule { static ɵfac: i0.ɵɵFactoryDeclaration; static ɵmod: i0.ɵɵNgModuleDeclaration; static ɵinj: i0.ɵɵInjectorDeclaration; } declare class GraniteTableCellConstants { static readonly CELL_ID_PREFIX: string; static readonly START_ALIGN: string; static readonly CENTER_ALIGN: string; static readonly END_ALIGN: string; } export { GraniteTableCellConstants, GraniteTableColumnDirective, GraniteTableComponent, GraniteTableModule }; export type { GranitTableColumnAlign, GranitTableColumnSize, GraniteTableColumnInterface };