import { CurrencyPipe } from '@angular/common'; import { EventEmitter, OnInit } from '@angular/core'; import { MatTable, MatTableDataSource } from '@angular/material/table'; import { MatPaginator } from '@angular/material/paginator'; import { IMenuOptions } from '../../models/IMenuOptions'; import { MatSort } from '@angular/material/sort'; import { SingleImageLoaderController } from '../../services/single-image-loader-controller/single-image-loader-controller.service'; import { FileUpload } from '../../models/IFileUpload'; import { IColumnDetails, ITableData } from '../../models/ITableData'; import { ScrollService } from '../../services/scroll/scroll.service'; import { IFileData } from '../../models/IFileData'; import { ITableExportData } from '../../models/ITableExportData'; export declare class InputTableComponent implements OnInit { private currencyPipe; private singleImageLoaderController; private scrollService; constructor(currencyPipe: CurrencyPipe, singleImageLoaderController: SingleImageLoaderController, scrollService: ScrollService); table: MatTable; paginator: MatPaginator; sort: MatSort; /** * The title name to show at the top of the table * @internal */ titleName: string; /** * The title to show at the top of the table * @internal */ title: string; /** * The attributes belonging to each item in the table * @internal */ inputProperties: IColumnDetails[]; /** * Custom function to validate the CSV file * @internal */ validateCSV: (args: any) => { message: string; type: string; }[]; /** * Return the options updated each time the user check a radio button * @internal */ data: EventEmitter[]>; /** * Return the options updated each time the user check a radio button * @internal */ csvErrors: EventEmitter<{ message: string; type: string; }[]>; /** * Options to display as menu items in the table * Use the IMenuOptions interface: { label: string; icon?: string; callback: () => void; args?: any[]; } * @internal */ upperList: IMenuOptions[]; baseModel: ITableData; modelList: ITableData[]; dataSource: MatTableDataSource>; multipleRows: boolean; tableRows: number; imageElement: ITableData; missingInfo: boolean; private errorCounter; imageLoaderModal: (event: Event) => Promise; ngOnInit(): void; ngAfterViewInit(): void; ngDoCheck(): void; transformAmount(element: any): void; onFocusCost(event: any): void; transformMonth(element: any): void; onFocusMonth(event: any): void; transformDays(element: any): void; onFocusDays(event: any): void; copyRows(): void; dateSelection(element: any): Date; rowChange(event: any): void; rowColumns(list: IColumnDetails[]): string[]; onSave: (file: FileUpload) => Promise; displayModal: (event: Event, element: any) => void; updateModel(): void; focusOutFunction(event: any): void; createRow(data?: ITableData): ITableData; handleCSVData(event: IFileData): void; createRows(rows: ITableData[]): void; keyPressDecimal(event: KeyboardEvent): boolean; keyPressInt(event: KeyboardEvent): boolean; getInputStyle(inputSize: string): "table-input-text-small" | "table-input-text-medium" | "table-input-text-large"; getNonCloneableColumns(): string; onScroll(): void; exportCSV(args: ITableExportData[]): void; importCSV(): void; }