import { EventEmitter, TemplateRef, ViewContainerRef } from '@angular/core'; import { GridUtilService } from './share/grid-util.service'; import { API } from '../services/api'; export interface PageData { content: Array; numberOfElements: number; [portName: string]: any; } export interface PageIndexAndSize { page: number; size: number; } export declare class UIGridComponent { private util; _vcr: ViewContainerRef; api: API; gridImg: ViewContainerRef; nzTable: any; _data: PageData; _dataSet: any[]; _selections: any; _loading: boolean; loading: boolean; _fixScrollY: number; _title: string; _titleTpl: TemplateRef; _exportLoading: boolean; _editCol: boolean; targetColumns: any[]; editColumns: any[]; buttonGather: { showEditColumn: boolean; enableExport: boolean; }; pageIndex: number; pageSize: number; _page: number; _size: number; private _pageIndex; private _pageSize; /** * 控制多选 */ _allChecked: boolean; _indeterminate: boolean; _displayData: any[]; _iconComp: {}; _customComp: { [k: string]: any; }; _searchCustom: { [k: string]: TemplateRef; }; _hasSearch: number; _popoverStr: string; _popoverArr: any[]; editCol: boolean; load: EventEmitter; selectionChange: EventEmitter; cellClick: EventEmitter; cellOver: EventEmitter; exportCSV: EventEmitter; id: string; columns: any[]; showSizeChanger: boolean; showPagination: boolean; pageSizeValues: number[]; showTitle: boolean; mulitipy: boolean; selectColor: string; isSyncData: boolean; data: PageData; fixScroll: any; title: string | TemplateRef; searchTmpl: any[]; selection: Array; constructor(util: GridUtilService, _vcr: ViewContainerRef, api: API); ngOnInit(): void; ngAfterViewInit(): void; ngOnChanges(): void; ngOnDestroy(): void; /**page index change event handler */ nzPageIndexChange($event: any): void; pageSizeChange($event: any): void; isNeedSearch(column: any): any; editChange(change: any): void; onLazyLoad(page?: PageIndexAndSize): any; getIconInstance({outField, outProp, iconTemplate}: { outField: any; outProp: any; iconTemplate: any; }): void; getCusTmplInstance({outField, customTemplate}: { outField: any; customTemplate: any; }): void; /** * 记录选择事件 * @param rows */ onRowSelectChange(data: any): boolean; /** * 选择checkbox */ refreshStatus(event?: MouseEvent): void; refreshSingleStatus(event: MouseEvent, data: any, index: number): void; /** * 全选和反选 * @param value * @param data */ checkAll(value: any, data: Array): void; /** * cell点击事件 * @param event * @param row * @param field */ onCellClick(event: Event, row: any, field: any): void; /** * 鼠标mouseover事件 */ onCellMouseover(event: any, row: any, field: any): void; /** * 数据转为字符串 * @param val * @returns {any} * @constructor */ dataToStr(val: any): any; /** * 对有textLength属性的column进行字节数量控制 * @param val * @param textLength * @param mergeName 控制popover弹窗,传需要合并的key,eg: [{a: '床'},{a: '被子'}] ,此处mergeName传'a' * @returns {string|void|any} */ replaceTextOmit(val: any, textLength?: number, mergeName?: string): any; /** * 字符串转数组,逗号隔开, popover在表格中有性能问题, * 会触发两次导致第一次会显示表格中最后一个单元格的值再显示想显示的popover数组 * 临时解决办法必须在html模板中传val值,估计是多次触发表格的变化检测 */ splitName(val: any, mergeName?: string): any; /** * * @param grid * @param data * @param isFailed 失败了 */ doExportCSV(grid: any, data: any, isFailed?: boolean): void; exportDisable: boolean; exportCSVIntenal(): void; } export declare class UIGridModule { }