import { EventEmitter, TemplateRef, NgZone, ChangeDetectorRef } from '@angular/core'; import { NzResizeEvent } from 'ng-zorro-antd/resizable'; import { NzTableComponent, NzTableLayout, NzTableQueryParams } from 'ng-zorro-antd/table'; import { ControlValueAccessor } from '@angular/forms'; import { NzSafeAny, OnChangeType } from 'ng-zorro-antd/core/types'; import { TBODY_TYPE } from './types/table.type'; import { ColPersistence } from './persistence'; import * as i0 from "@angular/core"; declare type defaultTmpType = string | TemplateRef | null; declare type CHECK_MODE_TYPE = 'change' | 'blur' | 'click' | 'mouseleave'; export declare class EoNgTableComponent implements ControlValueAccessor { private ngZone; cdr: ChangeDetectorRef; /** 数据持久化需要改值作为唯一标识(避免混用缓存数据) */ id?: string; nzResizable: boolean; nzData: Array; nzDataItem: any; nzThead: Array; nzTbody: Array; nzShowPagination: boolean; nzTableLayout: NzTableLayout; nzFrontPagination: boolean; nzPrimaryKey: string; nzCheckAddRow: Function | null; nzTrShowFn: Function | null; nzResizeEnd: EventEmitter; nzScroll: { x?: string; y?: string; }; nzVirtualItemSize: number; nzTrClick: Function | null; nzTrStyleFn: Function | null; nzTrMouseEnter: Function | null; nzTrMouseLeave: Function | null; nzDraggable: boolean; nzLoading: boolean; nzLoadingIndicator: TemplateRef | null; nzLoadingDelay: number; nzFooter: defaultTmpType; nzTrTopTmp: defaultTmpType; nzTrBottomTmp: defaultTmpType; nzTotal: number; nzPageSize: number; nzPageIndex: number; nzPaginationType: 'default' | 'small'; nzPageSizeOptions: number[]; nzVirtualMaxItems: number; nzVirtualMaxBufferPx: number; nzVirtualMinBufferPx: number; nzShowQuickJumper: boolean; nzShowSizeChanger: boolean; nzNoResult: string | TemplateRef; nzShowTotal: TemplateRef<{ $implicit: number; range: [number, number]; }>; nzItemRender: TemplateRef<{ $implicit: 'page' | 'prev' | 'next'; page: number; }>; nzHideOnSinglePage: boolean; nzSimple: boolean; nzIsLevel: boolean; /** * 全局粘贴去空格配置,优先级:column(rowItem).trimOnPaste > 组件级 trimOnPaste * 可为: false/undefined(不处理),true|'trim'(去除前后空格),'removeAll'(去除所有空白字符) */ trimOnPaste?: boolean | 'trim' | 'removeAll'; nzChildKey: string; nzExpand: boolean; nzPageSizeChange: EventEmitter; nzPageIndexChange: EventEmitter; nzWatchScroll: EventEmitter; nzDataChange: EventEmitter; nzFilterChange: EventEmitter; nzSortChange: EventEmitter; nzCurrentPageDataChange: EventEmitter; nzQueryParams: EventEmitter; getScrollViewPort: EventEmitter; getRealTableNodes: EventEmitter; /** * @deprecated * 该事件只暴露拖拽后的数据 * 某些场景比较受限 * 请改用onDragEnd平替,nzDragEnd存放在data属性中 */ nzDragEnd: EventEmitter; onDragEnd: EventEmitter<{ data: any[]; preIndex: number; preItem: any; currentIndex: number; currentItem: any; }>; nzRadioChange: EventEmitter; nzDragCheck?: Function; onChange: OnChangeType; trackByFn: any; allChecked: { [key: string]: boolean; }; radio: TemplateRef | null; input: TemplateRef | null; autoComplete: TemplateRef | null; select: TemplateRef | null; btn: TemplateRef | null; default: TemplateRef | null; defaultEmptyTpl: TemplateRef | undefined; nzTableComponent?: NzTableComponent; mapOfExpandedData: Array; sortIsInner: boolean; checkboxConf: any; dragging: boolean; startResize(evt: NzResizeEvent): void; /** * 拖动改变列宽回调函数 * @param width 拖动时列宽 * @param col 拖动的具体列数 */ onResize(evt: NzResizeEvent, col: any): void; getDataLength(data: any[]): number; getIndex(eoKey: string): number; /** * 当数据展开时触发函数(因为 ng-table 层级点击展开时只能展开第一层级子节点的状态,故需要使用这个函数) * @param item 需要展开的条目 * @param $event 判断展开还是隐藏? */ collapse(item: any, $event: boolean, isRoot?: boolean): void; /** * 将数据推进堆栈区,与convertTreeToList共用 * @param stack * @param item * @param resetKey 是否重制数据,主要为 expand,展开状态 * @param baseLevel 当前操作的层级是? */ setItemInStack(stack: Array, item: any, resetKey?: boolean, baseLevel?: number, parent?: any): void; keyRowRef: any; /** 处理单元格 paste 事件,按列或全局配置进行去空格处理 */ onCellPaste(event: ClipboardEvent, rowItem: any, rowIndex: number): void; getRowItem(type: 'radio' | 'input' | 'autoComplete' | 'select' | 'btn' | undefined): any; tdKeyRef: any; getSwicthNode(type: 'sort' | '' | any, showFn: Function, item: any): any; /** * 初始化将 nzData 调整为我们需要的列表结构 * @param root 根节点数据 * @param resetKey 是否重制数据,主要为 expand,展开状态 * @param baseLevel 当前操作的层级是? * @returns 转换后的列表 */ convertTreeToList(root: any, resetKey?: boolean, baseLevel?: number): Array; /** 校验左侧元素是否全是left */ checkPrevElementIsAllLeft(data: T[], target: T): boolean; /** * 检查是否存在重复数值,并将当前节点置入数组 * @param node 当前待置入节点 * @param hashMap hash 检查表 * @param array 待被置入的数组 */ visitNode(node: any, hashMap: { [key: string]: boolean; }, array: Array): void; resetCheckboxConf(): void; refreshStatusByCheckbox(): void; persistenceStorage?: ColPersistence; pending: boolean; get tHead(): any[]; /** * 组件初始化 */ ngOnInit(): void; /** * 拖动排序行时所需的列表重制操作 * @param item 当前操作项 * @param currentIndex 得调整的序号 * @param level 得调整的层级 */ dragResetTable(item: any, currentIndex: number, level: number): void; /** * 获取当前节点的子集长度 * @param root 父节点数据 * @returns 子集长度 */ getChildrenLength(root: any): number; /** * 重制拖动时的 placeholder 操作 * @returns 拖动的是向下还是向上 */ resetDragPlaceholder(): number; /** * 当前操作为拖动进某一个数据中的操作 * @param preIndex 前置序号 * @param preItem 前置数据 * @param currentIndex 新序号 * @param currentItem 新数据 * @returns 新序号 */ sortInner(preIndex: number, preItem: any, currentIndex: number, currentItem: any): number; /** * 当前操作为拖动进某一个数据外的操作 * @param preIndex 前置序号 * @param preItem 前置数据 * @param currentIndex 新序号 * @param currentItem 新数据 * @returns 新序号 */ sortOutline(preIndex: number, preItem: any, currentIndex: number, currentItem: any): number; getTrId(path: HTMLElement[] | HTMLElement): any; changeRadio(data: any, rowItem: TBODY_TYPE): void; /** * 条目拖动排序后操作 * @param event 操作对象 * @returns null */ dragEnd(event: any): Promise; oldElem: any; getTrElem(path: HTMLElement): any; /** * 条目拖动过程中效果 * @param event 拖动数据 * @returns null */ dragMove(event: any): void; /** * 提供给父仓库的组件 */ publicApis: any; /** * 初始化持久化数据配置 * @param nzThead */ initPersistence(nzThead: any): void; updateRootLevelExpand(nzData: any[]): void; /** * 当传参数据发生变更时走这 * @param event 变更的数据对象 */ rootLevelHasExpand: boolean; ngOnChanges(event: any): void; changePageIndex($event: any): void; changePageSize($event: any): void; /** * checkbox 刷新勾选状态 * @param event 勾选状态 * @param rowItem 当前操作行配置 * @param item 当前操作条目数据 */ refreshStatus(event?: boolean, rowItem?: any, item?: any): void; /** * 全选操作 * @param value 勾选状态 */ checkAll(value: boolean, col: any): void; emitData(target: string): void; /** * 当项排序状态检查 * @param a 前置项 * @param b 后置项 * @param key 关键词 * @param event 排序要求 * @returns 排序状态 */ sortCheckAAndB(a: any, b: any, key: string, event: string): 0 | 1 | -1; /** * 列排序操作,用于轮询 * @param data 数据 * @param key 关键词 * @param event 排序状态 * @returns 操作的序号 */ sortDataByKey(data: any, key: string, event: string): void; /** * 列排序操作函数 * @param data 数据 * @param key 关键词 * @param event 排序状态 * @returns 操作的序号 */ sortFn(col: any, event: any): void; /** * 过滤回调函数 * @param col 列 * @param event 过滤关系 */ filterFnChanged(col: any, event: any): void; /** * 重置列表数据 * @param nzData 数据数组 * @returns null */ resetMapData(nzData: any): void; /** * 按钮点击事件 * @param event dom 操作对象 * @param btnConf 按钮信息 * @param index 操作行序列信息 */ btnClick(event: any, btnConf: any, index: number): void; /** * 行操作操作 * @param event dom 操作对象 * @param item 操作行信息 */ oprTr(action: string, event: any, item: any, list?: any): void; constructor(ngZone: NgZone, cdr: ChangeDetectorRef); /** * 在视图变更完成后 * @returns null */ ngAfterViewInit(): void; /** * @desc 像父级广播 * @param fnName 广播的名称 */ emitParent(fnName: string, $event: any): void; /** * @desc 检测数据合法性 * @param action string 操作 * @param row TBODY_TYPE tbody 每一列配置 * @param itemIndex 当前操作的数据项 */ checkValid(action: CHECK_MODE_TYPE, row: TBODY_TYPE, itemIndex: number): Promise; emitFormModelData(): void; writeValue(value?: any[]): void; registerOnChange(fn: OnChangeType): NzSafeAny; registerOnTouched(fn: any): void; setDisabledState?(isDisabled: boolean): void; getNgTbody(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; } export {};