import * as _angular_core from '@angular/core'; import { TemplateRef, InputSignal, WritableSignal, ElementRef, OutputEmitterRef, InputSignalWithTransform, Signal, OnInit, ChangeDetectorRef, AfterViewInit, AfterViewChecked, Renderer2, OnDestroy, SimpleChanges, SimpleChange } from '@angular/core'; import * as _ng_nest_ui_core from '@ng-nest/ui/core'; import { XData, XParentIdentityProperty, XIdentityProperty, XTextAlign, XNumber, XBoolean, XTemplate, XSort, XSize, XQuery, XDataArray, XProperty } from '@ng-nest/ui/core'; import { XPaginationInputIndexSizeSureType, XPaginationComponent } from '@ng-nest/ui/pagination'; import { XSelectNode } from '@ng-nest/ui/select'; import { CdkVirtualScrollViewport } from '@angular/cdk/scrolling'; import { Subject } from 'rxjs'; import { CdkDragDrop, CdkDragSortEvent, CdkDragStart } from '@angular/cdk/drag-drop'; import * as _angular_platform_browser from '@angular/platform-browser'; /** * Table * @selector x-table * @decorator component */ declare const XTablePrefix = "x-table"; declare const XTableProperty_base: new () => { config: _ng_nest_ui_core.XTableConfig | undefined; }; /** * Table Property */ declare class XTableProperty extends XTableProperty_base { /** * @zh_CN 行数据 * @en_US Row data */ readonly data: _angular_core.InputSignalWithTransform, XData>; /** * @zh_CN 列集合 * @en_US Column set */ readonly columns: _angular_core.InputSignal; /** * @zh_CN 表头高度,单位 px * @en_US Header height, unit px */ readonly headerHeight: _angular_core.InputSignalWithTransform; /** * @zh_CN 行高,单位 px * @en_US Row height, unit px */ readonly rowHeight: _angular_core.InputSignalWithTransform; /** * @zh_CN 是否启用加载 loading * @en_US Whether to enable loading */ readonly loading: _angular_core.InputSignalWithTransform; /** * @zh_CN 是否展示列边框 * @en_US Whether to show column borders */ readonly bordered: _angular_core.InputSignalWithTransform; /** * @zh_CN 是否显示列头 * @en_US Whether to display the column headers */ readonly showHeader: _angular_core.InputSignalWithTransform; /** * @zh_CN 列头显示位置 * @en_US Whether to display the column headers */ readonly headerPosition: _angular_core.InputSignal; /** * @zh_CN 列内容支持 innerHTML 渲染 html 标签 * @en_US Column content supports innerHTML rendering of HTML tags */ readonly bodyInnerHTML: _angular_core.InputSignalWithTransform; /** * @zh_CN 当前选中行数据 * @en_US Currently selected row data */ readonly activatedRow: _angular_core.ModelSignal; /** * @zh_CN 列头自定义模板,通过 key-value 的方式指定每列的模版 * @en_US Column header custom template */ readonly headColumnTpl: _angular_core.InputSignal; /** * @zh_CN 列头单元格自定义模板,优先级低于列头自定义模板 * @en_US Column header custom template */ readonly headThTpl: _angular_core.InputSignal; /** * @zh_CN 列内容自定义模板,通过 key-value 的方式指定每列的模版 * @en_US Column content custom template */ readonly bodyColumnTpl: _angular_core.InputSignal; /** * @zh_CN 单元格的自定义模板,优先级低于列内容自定义模板 * @en_US Custom template of cells */ readonly bodyTdTpl: _angular_core.InputSignal; /** * @zh_CN 行条件样式 * @en_US Row condition class */ readonly rowClass: _angular_core.InputSignal<((row: XTableRow, index: number) => { [className: string]: boolean; }) | undefined>; /** * @zh_CN 列头搜索自定义模板 * @en_US Line head search custom template */ readonly headSearchTpl: _angular_core.InputSignal; /** * @zh_CN 排序点击的事件 * @en_US Sort click events */ readonly sortChange: _angular_core.OutputEmitterRef; /** * @zh_CN 列头 checkbox 事件 * @en_US head checkbox event */ readonly headCheckboxChange: _angular_core.OutputEmitterRef; /** * @zh_CN body checkbox 事件 * @en_US head checkbox event */ readonly bodyCheckboxChange: _angular_core.OutputEmitterRef; /** * @zh_CN 允许行点击选中当前行 * @en_US Allow row click to select */ readonly allowSelectRow: _angular_core.InputSignalWithTransform; /** * @zh_CN 允许行点击选中 checkbox * @en_US Allow lines to click checkbox */ readonly allowCheckRow: _angular_core.InputSignalWithTransform; /** * @zh_CN 开启虚拟滚动 * @en_US Turn on virtual scrolling */ readonly virtualScroll: _angular_core.InputSignalWithTransform; /** * @zh_CN body 数据高度,只有开启虚拟滚动的时候生效 * @en_US body data height */ readonly bodyHeight: _angular_core.InputSignalWithTransform; /** * @zh_CN itemSize,对应 cdk scroll 中的参数 * @en_US itemSize,corresponding to the parameters in cdk scroll */ readonly itemSize: _angular_core.InputSignalWithTransform; /** * @zh_CN 超出可视窗口缓冲区的最小值,对应 cdk scroll 中的参数 * @en_US Exceed the minimum value of the visible window buffer, corresponding to the parameters in cdk scroll */ readonly minBufferPx: _angular_core.InputSignalWithTransform; /** * @zh_CN 渲染新数据缓冲区的像素,对应 cdk scroll 中的参数 * @en_US Render the pixels of the new data buffer, corresponding to the parameters in cdk scroll */ readonly maxBufferPx: _angular_core.InputSignalWithTransform; /** * @zh_CN 自适应高度,table 高度等于屏幕高度减掉此处设置的数值 * @en_US Adaptive height, table height is equal to the screen height minus the value set here */ readonly adaptionHeight: _angular_core.InputSignalWithTransform; /** * @zh_CN 文档高度百分比,弹窗百分比高度用到 * @en_US Document height percentage, used by pop-up window percentage height */ readonly docPercent: _angular_core.InputSignalWithTransform; /** * @zh_CN checkbox 列初始选中的数据,列中激活 checkbox * @en_US Checkbox column initially selected data, checkbox is activated in column */ readonly checkedRow: _angular_core.InputSignal<{ [property: string]: any[]; }>; /** * @zh_CN 禁用拖动 checkbox 批量选中/取消 * @en_US Disable dragging checkboxes for batch selection/cancellation */ readonly checkboxDragDisabled: _angular_core.InputSignalWithTransform; /** * @zh_CN 如果 data 是函数类型,可以通过此参数控制请求,常用于弹框中的表格,弹出后再请求 * @en_US If data is a function type, you can use this parameter to control the request, which is often used in the form in the pop-up box, and then request it after it pops up */ readonly manual: _angular_core.ModelSignal; /** * @zh_CN 滚动区域高宽 * @en_US Height and width of rolling area */ readonly scroll: _angular_core.InputSignal<{ x: number; y: number; } | undefined>; /** * @zh_CN 表格页头 * @en_US Table header */ readonly header: _angular_core.InputSignal; /** * @zh_CN 表格页尾 * @en_US Table footer */ readonly footer: _angular_core.InputSignal; /** * @zh_CN 单元格配置 * @en_US Cell config */ readonly cellConfig: _angular_core.InputSignal; /** * @zh_CN 尺寸 * @en_US Size */ readonly rowSize: _angular_core.InputSignal; /** * @zh_CN 分页器位置 * @en_US Pagination position */ readonly paginationPosition: _angular_core.InputSignal; /** * @zh_CN 隐藏表格外边框 * @en_US Hidden table wrap border */ readonly hiddenWrapBorder: _angular_core.InputSignalWithTransform; /** * @deprecated useless * @zh_CN 隐藏分页器按钮边框 * @en_US Hidden pagination button border */ readonly hiddenPaginationBorder: _angular_core.InputSignalWithTransform; /** * @zh_CN 显示分页器 * @en_US Pagination position */ readonly showPagination: _angular_core.InputSignalWithTransform; /** * @zh_CN 树形表格 * @en_US Tree table */ readonly treeTable: _angular_core.InputSignalWithTransform; /** * @zh_CN 树形表格展开所有节点 * @en_US Tree table */ readonly expandedAll: _angular_core.InputSignalWithTransform; /** * @zh_CN 默认展开的层级,-1 不展开 * @en_US Default expanded level */ readonly expandedLevel: _angular_core.InputSignalWithTransform; /** * @zh_CN 展开的节点 * @en_US Expanded node */ readonly expanded: _angular_core.InputSignal; /** * @zh_CN 自定义展开内容 * @en_US Customized expansion content */ readonly expandTpl: _angular_core.InputSignal; /** * @zh_CN 显示数据为空的提示 * @en_US Display a prompt with empty data */ readonly showEmpty: _angular_core.InputSignalWithTransform; /** * @zh_CN 数据为空的提示图片地址或自定义模板 * @en_US Picture address or custom template */ readonly emptyImg: _angular_core.InputSignal; /** * @zh_CN 数据为空的提示内容或自定义模板 * @en_US Content or custom template */ readonly emptyContent: _angular_core.InputSignal; /** * @zh_CN 当前页码 * @en_US Current page number */ readonly index: _angular_core.ModelSignal; /** * @zh_CN 每页显示条数 * @en_US Number of items displayed per page */ readonly size: _angular_core.ModelSignal; /** * @zh_CN 总数 * @en_US Total */ readonly total: _angular_core.ModelSignal; /** * @zh_CN 查询条件 * @en_US Query conditions */ readonly query: _angular_core.ModelSignal; /** * @zh_CN 最多显示的分页数量 * @en_US The largest number of pages display */ readonly pageLinkSize: _angular_core.InputSignalWithTransform; /** * @zh_CN 显示首尾页跳转 * @en_US Display the first and last page */ readonly showEllipsis: _angular_core.InputSignalWithTransform; /** * @zh_CN 显示总条数 * @en_US Display the total */ readonly showTotal: _angular_core.InputSignalWithTransform; /** * @zh_CN 按钮间距 * @en_US Button spacing */ readonly space: _angular_core.InputSignalWithTransform; /** * @zh_CN 添加背景色 * @en_US Show background */ readonly showBackground: _angular_core.InputSignalWithTransform; /** * @zh_CN 显示分页条数 * @en_US Show size */ readonly showSize: _angular_core.InputSignalWithTransform; /** * @zh_CN 分页条数选择框的宽度 * @en_US size with select */ readonly sizeWidth: _angular_core.InputSignalWithTransform; /** * @zh_CN 显示输入分页条数(不能跟下拉选项同时使用) * @en_US Display the number of input page breaks (cannot exist with the drop-down options of page breaks) */ readonly showInputSize: _angular_core.InputSignalWithTransform; /** * @zh_CN 显示输入分页框的 tooltip 提示信息,默认显示 * @en_US show enter the tooltip prompt information for the pagination box, which will be displayed by default based on the confirmation of the input */ readonly showInputSizeTooltipText: _angular_core.InputSignalWithTransform; /** * @zh_CN 输入分页框的 tooltip 提示信息,默认根据输入确认改变的方式来显示 * @en_US Enter the tooltip prompt information for the pagination box, which will be displayed by default based on the confirmation of the input */ readonly inputSizeTooltipText: _angular_core.InputSignal; /** * @zh_CN 分页条数输入框的宽度 * @en_US size with input */ readonly inputSizeWidth: _angular_core.InputSignalWithTransform; /** * @zh_CN 分页选择的数据项 * @en_US Paging choose items of data */ readonly sizeData: _angular_core.InputSignal>; /** * @zh_CN 禁用整个分页 * @en_US disabled */ readonly disabled: _angular_core.InputSignalWithTransform; /** * @zh_CN 显示跳转输入框 * @en_US Show size */ readonly showJump: _angular_core.InputSignalWithTransform; /** * @zh_CN 显示跳转输入框的 tooltip 提示信息,默认显示 * @en_US Show the tooltip prompt information for jumping to the input box is displayed by default based on the confirmation of input changes */ readonly showJumpTooltipText: _angular_core.InputSignalWithTransform; /** * @zh_CN 跳转输入框的 tooltip 提示信息,默认根据输入确认改变的方式来显示 * @en_US The tooltip prompt information for jumping to the input box is displayed by default based on the confirmation of input changes */ readonly jumpTooltipText: _angular_core.InputSignal; /** * @zh_CN 跳转页的宽度 * @en_US size with */ readonly jumpWidth: _angular_core.InputSignalWithTransform; /** * @zh_CN 总数自定义模板 * @en_US Total template */ readonly totalTpl: _angular_core.InputSignal; /** * @zh_CN 简单分页 * @en_US Simple */ readonly simple: _angular_core.InputSignalWithTransform; /** * @zh_CN 简单分页输入框宽度 * @en_US Simple index with */ readonly simpleIndexWidth: _angular_core.InputSignalWithTransform; /** * @zh_CN 输入确认改变的方式,针对输入分页大小和输入跳转页 * @en_US The method for confirming changes in input is based on the input page size and input jump page */ readonly inputIndexSizeSureType: _angular_core.InputSignal; /** * @zh_CN 行点击事件 * @en_US Row click event */ readonly rowClick: _angular_core.OutputEmitterRef; /** * @zh_CN 列头拖动开始事件,返回拖动的列 * @en_US Column Header Drag End Event */ readonly columnDragStarted: _angular_core.OutputEmitterRef; /** * @zh_CN 列头拖动结束事件,返回拖动的列 * @en_US The column header is dragging, and the event is triggered when the order is changed */ readonly columnDragEnded: _angular_core.OutputEmitterRef; /** * @zh_CN 当用户把一个条目投放进该容器时就会触发,拖动放开的事件,返回拖动排序后的列数据 * @en_US The column header is dragging, and the event is triggered when the order is changed */ readonly columnDropListDropped: _angular_core.OutputEmitterRef; /** * @zh_CN 开始拖动列宽的事件 * @en_US Event to started drag column width */ readonly columnDragWidthStarted: _angular_core.OutputEmitterRef; /** * @zh_CN 正在拖动列宽时的事件 * @en_US Event to moved drag column width */ readonly columnDragWidthMoved: _angular_core.OutputEmitterRef; /** * @zh_CN 结束拖动列宽的事件 * @en_US Event to ended drag column width */ readonly columnDragWidthEnded: _angular_core.OutputEmitterRef; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } /** * @zh_CN 行数据 * @en_US Row data */ interface XTableRow extends XParentIdentityProperty { /** * @zh_CN 展开 * @en_US Unfold */ expanded?: boolean; /** * @zh_CN 自定义属性 * @en_US Custom attributes */ [property: string]: any; } /** * @zh_CN 列参数 * @en_US Column parameter */ interface XTableColumn extends XIdentityProperty { /** * @zh_CN 类型 * @en_US Types of */ type?: XColumnType; /** * @zh_CN 宽度 * @en_US Width */ width?: number; /** * @zh_CN flex 布局宽度 * @en_US Flex layout width */ flex?: number; /** * @zh_CN 查询字段 * @en_US Query field */ search?: boolean; /** * @zh_CN 排序字段 * @en_US Sort field */ sort?: boolean; /** * @zh_CN 固定列,距离左边的距离 * @en_US Fixed column, distance from left */ left?: number; /** * @zh_CN 固定列,距离右边的距离 * @en_US Fixed column, distance from right */ right?: number; /** * @zh_CN 操作按钮 * @en_US Operation button */ action?: boolean; /** * @zh_CN type 为 checkbox 时绑定行点击选中事件 * @en_US Bind row click selection event when type is checkbox */ rowChecked?: boolean; /** * @zh_CN type 为 expand 时绑定行点击展开事件 * @en_US Bind row click selection event when type is expand */ rowExpand?: boolean; /** * @zh_CN 文字对齐方式 * @en_US Text alignment */ textAlign?: XTextAlign; /** * @zh_CN 拖动列宽,需要设置列的初始宽度 width * @en_US Drag the column width, you need to set the initial width of the column width */ dragWidth?: boolean; /** * @zh_CN 正在拖动列宽 * @en_US Dragging width */ draggingWidth?: boolean; /** * @zh_CN 开始拖动列宽的事件 * @en_US Event to started drag column width */ dragWidthStarted?: (event: XTableDragWidthEvent) => void; /** * @zh_CN 正在拖动列宽时的事件 * @en_US Event to moved drag column width */ dragWidthMoved?: (event: XTableDragWidthEvent) => void; /** * @zh_CN 结束拖动列宽的事件 * @en_US Event to ended drag column width */ dragWidthEnded?: (event: XTableDragWidthEvent) => void; /** * @zh_CN 拖动列 * @en_US Drag the column */ dragColumn?: boolean; /** * @zh_CN 正在拖动列 * @en_US Dragging column */ dragging?: boolean; /** * @zh_CN 头部显示 checkbox * @en_US Head shows checkbox */ headChecked?: boolean; /** * @zh_CN 头部显示 expand * @en_US Head shows expand */ headExpand?: boolean; /** * @zh_CN 列内容支持 innerHTML 渲染 html 标签 * @en_US Column content supports innerHTML rendering of HTML tags */ innerHTML?: boolean; /** * @zh_CN 禁用拖动 checkbox 选中/取消 * @en_US Disable dragging checkboxes for selection/cancellation */ checkboxDragDisabled?: boolean; /** * @zh_CN 自定义属性 * @en_US Custom attributes */ [property: string]: any; } /** * @zh_CN 列头宽度拖动事件 * @en_US Column header width drag event */ interface XTableDragWidthEvent { /** * @zh_CN 拖动的列 * @en_US Dragged column */ column: XTableColumn; /** * @zh_CN 列位置,正在拖动的时候指偏移位置 * @en_US The column position refers to the offset position when dragging */ position: { x: number; y: number; }; } /** * @zh_CN 列头 checkbox 事件数据 * @en_US Column header checkbox event data */ interface XTableHeadCheckbox { /** * @zh_CN 行数据 * @en_US Row data */ rows: XTableRow[]; /** * @zh_CN checkbox 数据 * @en_US Checkbox data */ checkbox: { [property: string]: boolean; }; } /** * @zh_CN 单元格配置 * @en_US Cell config */ interface XTableCellConfig { /** * @zh_CN 列单元格配置 * @en_US Column cell config */ thead?: XTableCellConfigRule; /** * @zh_CN 行单元格配置 * @en_US Row config */ tbody?: XTableCellConfigRule; } /** * @zh_CN 单元格配置规则 * @en_US Cell config rules */ interface XTableCellConfigRule { /** * @zh_CN grid 布局下定义列宽度 * @en_US Define column width under grid layout */ gridTemplateColumns?: string; /** * @zh_CN 单元格配置 * @en_US Cell merge rules */ cells?: XTableCell[]; } /** * @zh_CN 单元格合并配置 * @en_US Cell merge rules */ interface XTableCell { /** * @zh_CN 使用 grid 布局来合并单元格 * @en_US Use grid layout to merge cells */ gridArea?: string; /** * @zh_CN 名称 * @en_US Name */ label?: string; /** * @zh_CN 宽度 * @en_US Width */ width?: number; /** * @zh_CN 固定列,距离左边的距离 * @en_US Fixed column, distance from left */ left?: number; /** * @zh_CN 固定列,距离右边的距离 * @en_US Fixed column, distance from right */ right?: number; /** * @zh_CN 对应列的 id * @en_US The id of the corresponding column */ id?: string; /** * @zh_CN 拖动列宽 * @en_US Drag the column width */ dragWidth?: boolean; /** * @zh_CN 自定义属性 * @en_US Custom attributes */ [property: string]: any; } /** * @zh_CN 列类型 * @en_US Column type */ type XColumnType = 'label' | 'index' | 'checkbox' | 'expand'; /** * @zh_CN 列头显示位置 * @en_US Line head display position */ type XTableHeaderPosition = 'top' | 'bottom' | 'top-bottom'; /** * @zh_CN 分页器位置 * @en_US Paging position */ type XPaginationPosition = 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right'; /** * @zh_CN 模板 * @en_US Template */ type XTableTemplate = { [property: string]: TemplateRef; }; /** * Table Head * @selector x-table-head * @decorator component */ declare const XTableHeadPrefix = "x-table-head"; /** * Table Head Property */ declare class XTableHeadProperty extends XProperty { /** * @zh_CN 列集合 * @en_US Column set */ readonly columns: _angular_core.InputSignal; /** * @zh_CN 表头高度,单位 px * @en_US Header height, unit px */ readonly headerHeight: _angular_core.InputSignalWithTransform; /** * @zh_CN 高度,单位 px * @en_US Height in px */ readonly rowHeight: _angular_core.InputSignalWithTransform; /** * @zh_CN 自定义模板 * @en_US Custom template */ readonly columnTpl: _angular_core.InputSignal; /** * @zh_CN 竖向滚动条宽度 * @en_US Vertical scroll bar width */ readonly scrollYWidth: _angular_core.InputSignalWithTransform; /** * @zh_CN 横向滚动条宽度 * @en_US Horizontal scroll bar width */ readonly scrollXWidth: _angular_core.InputSignalWithTransform; /** * @zh_CN 单元格配置 * @en_US Cell merge rules */ readonly cellConfig: _angular_core.InputSignal; /** * @zh_CN 显示的位置 * @en_US Display position */ readonly position: _angular_core.InputSignal; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } /** * Table Body * @selector x-table-body * @decorator component */ declare const XTableBodyPrefix = "x-table-body"; /** * Table Body Property */ declare class XTableBodyProperty extends XProperty { /** * @zh_CN 行数据 * @en_US Row data */ readonly data: _angular_core.InputSignal; /** * @zh_CN 列集合 * @en_US Column set */ readonly columns: _angular_core.InputSignal; /** * @zh_CN 自定义模板 * @en_US Custom template */ readonly columnTpl: _angular_core.InputSignal; /** * @zh_CN 当前选中行数据 * @en_US Currently selected row data */ readonly activatedRow: _angular_core.ModelSignal; /** * @zh_CN 高度,单位 px。设置为 0 表示行高自适应内容高度。 * @en_US Height in px. set to 0 means that the row height is adaptive to the content height */ readonly rowHeight: _angular_core.InputSignalWithTransform; /** * @zh_CN body 数据高度 * @en_US body data height */ readonly bodyHeight: _angular_core.InputSignalWithTransform; /** * @zh_CN 允许行点击选中 * @en_US Allow row click to select */ readonly allowSelectRow: _angular_core.InputSignalWithTransform; /** * @zh_CN 开启虚拟滚动 * @en_US Turn on virtual scrolling */ readonly virtualScroll: _angular_core.InputSignalWithTransform; /** * @zh_CN itemSize,对应 cdk scroll 中的参数 * @en_US itemSize,corresponding to the parameters in cdk scroll */ readonly itemSize: _angular_core.InputSignalWithTransform; /** * @zh_CN 超出可视窗口缓冲区的最小值,对应 cdk scroll 中的参数 * @en_US Exceed the minimum value of the visible window buffer, corresponding to the parameters in cdk scroll */ readonly minBufferPx: _angular_core.InputSignalWithTransform; /** * @zh_CN 渲染新数据缓冲区的像素,对应 cdk scroll 中的参数 * @en_US Render the pixels of the new data buffer, corresponding to the parameters in cdk scroll */ readonly maxBufferPx: _angular_core.InputSignalWithTransform; /** * @zh_CN 自适应高度,table 高度等于屏幕高度减掉此处设置的数值 * @en_US Adaptive height, table height is equal to the screen height minus the value set here */ readonly adaptionHeight: _angular_core.InputSignalWithTransform; /** * @zh_CN 文档高度百分比,弹窗百分比高度用到 * @en_US Document height percentage, used by pop-up window percentage height */ readonly docPercent: _angular_core.InputSignalWithTransform; /** * @zh_CN 滚动区域高宽 * @en_US Height and width of rolling area */ readonly scroll: _angular_core.InputSignal<{ x: number; y: number; } | undefined>; /** * @zh_CN 单元格配置规则 * @en_US Cell config rules */ readonly cellConfig: _angular_core.InputSignal; /** * @zh_CN 行条件样式 * @en_US Row condition class */ readonly rowClass: _angular_core.InputSignal<((row: XTableRow, index: number) => { [className: string]: boolean; }) | undefined>; /** * @zh_CN 树形表格下的层级 * @en_US The level under the tree table */ readonly level: _angular_core.InputSignalWithTransform; /** * @zh_CN 树形表格展开所有节点 * @en_US Tree table */ readonly expandedAll: _angular_core.InputSignalWithTransform; /** * @zh_CN 自定义展开内容 * @en_US Customized expansion content */ readonly expandTpl: _angular_core.InputSignal; /** * @zh_CN 行点击事件 * @en_US Row click event */ readonly rowClick: _angular_core.OutputEmitterRef; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } /** * Table Foot * @selector x-table-foot * @decorator component */ declare const XTableFootPrefix = "x-table-foot"; /** * Table Foot Property */ declare class XTableFootProperty extends XProperty { /** * @zh_CN 表格页尾 * @en_US Table footer */ readonly footer: _angular_core.InputSignal; /** * @zh_CN 表头和行高,单位 px * @en_US Header and row height, unit px */ readonly rowHeight: _angular_core.InputSignalWithTransform; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } interface XTableContext { rowSize: InputSignal; theads: WritableSignal[]>; tfoot: WritableSignal | null>; headSearchTpl: InputSignal; checkedValues: WritableSignal<{ [prop: string]: boolean; }>; headThTpl: InputSignal; indeterminate: WritableSignal; sortChange: OutputEmitterRef; columnDragWidthMoved: OutputEmitterRef; columnDragWidthStarted: OutputEmitterRef; columnDragWidthEnded: OutputEmitterRef; columnDropListDropped: OutputEmitterRef; columnDragStarted: OutputEmitterRef; columnDragEnded: OutputEmitterRef; treeTable: InputSignalWithTransform; virtualBody: WritableSignal; caption: Signal | undefined>; pagination: Signal; scrollContentEle: WritableSignal; table: Signal>; scrollTop: WritableSignal; scrollLeft: WritableSignal; scrollLeftMax: WritableSignal; hasScrollY: WritableSignal; scrollYWidth: WritableSignal; hasScrollX: WritableSignal; scrollXHeight: WritableSignal; scrollXWidth: WritableSignal; allowCheckRow: InputSignalWithTransform; rowChecked: WritableSignal; showEmpty: InputSignalWithTransform; emptyImg: InputSignal; emptyContent: InputSignal; checkboxDragDisabled: InputSignalWithTransform; bodyTdTpl: InputSignal; bodyInnerHTML: InputSignalWithTransform; rowExpand: WritableSignal; getSticky(column: XTableColumn | XTableCell): boolean; getStickyLeft(column: XTableColumn | XTableCell): boolean; getStickyRight(column: XTableColumn | XTableCell): boolean; getStickyLeftLast(column: XTableColumn | XTableCell): boolean; getStickyRightFirst(column: XTableColumn | XTableCell): boolean; headChecked(checked: boolean, column: XTableColumn): void; checkSort(sort: XSort[]): void; resetScroll(x: boolean, y: boolean): void; bodyChecked(column: XTableColumn, row: XTableRow): void; setCheckbox(rows: XTableRow[], column: XTableColumn): void; getIndex(index: number): number; isExpandColumn(column: XTableColumn): boolean; detectChanges(): void; } declare class XTableHeadComponent extends XTableHeadProperty implements OnInit { table: XTableContext; cdr: ChangeDetectorRef; thead: _angular_core.Signal>; sort: _angular_core.WritableSignal; sortStr: _angular_core.WritableSignal; theadStyle: _angular_core.Signal<{ "min-height": string; }>; thClassMap: _angular_core.Signal<{ [x: string]: boolean; }>; initColumns: _angular_core.Signal; getRowHeight: _angular_core.Signal; getHeaderHeight: _angular_core.Signal; private elementRef; ngOnInit(): void; ngAfterViewInit(): void; getFlex(column: XTableColumn): number | "none"; getColumnRight(right?: number): number | ""; getColumnWidth(column: XTableColumn): number | undefined; onSort(column: XTableColumn): void; dragWidthMoved(position: { x: number; y: number; offsetX: number; offsetY: number; }, column: XTableColumn | XTableCell): void; dragWidthStarted(position: { x: number; y: number; }, column: XTableColumn | XTableCell): void; dragWidthEnded(position: { x: number; y: number; }, column: XTableColumn | XTableCell): void; dropListDropped(event: CdkDragDrop): void; dropListSorted(event: CdkDragSortEvent): void; dragStarted(_event: CdkDragStart, column: XTableColumn): void; dragEnded(column: XTableColumn): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare class XTableFootComponent extends XTableFootProperty implements OnInit { tfoot: _angular_core.Signal>; table: XTableContext; cdr: ChangeDetectorRef; getRowHeight: _angular_core.Signal; private elementRef; ngOnInit(): void; ngAfterViewInit(): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare class XTableBodyComponent extends XTableBodyProperty implements OnInit, AfterViewInit, AfterViewChecked { renderer: Renderer2; elementRef: ElementRef; cdr: ChangeDetectorRef; tbody: _angular_core.Signal>; virtualBody: _angular_core.Signal; table: XTableContext; private doc; private unSubject; private resizeObserver; private domSanitizer; tbodyStyle: _angular_core.WritableSignal<{ [property: string]: any; }>; isEmpty: _angular_core.Signal; getRowHeight: _angular_core.Signal; getItemSize: _angular_core.Signal; docClientHeight: _angular_core.WritableSignal; headHeight: _angular_core.WritableSignal; captionHeight: _angular_core.WritableSignal; footHeight: _angular_core.WritableSignal; paginationHeight: _angular_core.WritableSignal; checkboxDragging: _angular_core.WritableSignal; expandChanged: _angular_core.WritableSignal; bodyHeightSignal: _angular_core.Signal; minBufferPxSignal: _angular_core.Signal; maxBufferPxSignal: _angular_core.Signal; treeData: _angular_core.Signal; rows: _angular_core.Signal; constructor(); ngOnInit(): void; ngAfterViewInit(): void; ngAfterViewChecked(): void; ngOnDestroy(): void; setSubject(): void; setScroll(): void; setStyle(): void; setDomSanitizer(str: string): _angular_platform_browser.SafeHtml; getIndex(index: number, item: XTableRow): number; getFlex(column: XTableColumn): number | "none"; getTitle(row: XTableRow, column: XTableCell | any): string; onRowClick(event: Event, row: XTableRow): void; onExpanded(event: Event, node: XTableRow): void; trackByItem(_index: number, item: XTableRow | XTableColumn): any; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare class XTableComponent extends XTableProperty implements OnInit, OnDestroy, AfterViewChecked, XTableContext { renderer: Renderer2; elementRef: ElementRef; cdr: ChangeDetectorRef; unSubject: Subject; classMap: _angular_core.Signal<{ [x: string]: boolean; }>; theads: _angular_core.WritableSignal[]>; tfoot: _angular_core.WritableSignal | null>; virtualBody: _angular_core.WritableSignal; theadsChange: (() => void)[]; bodyChange: () => void; scrollContentEle: _angular_core.WritableSignal; hasScrollY: _angular_core.WritableSignal; scrollYWidth: _angular_core.WritableSignal; hasScrollX: _angular_core.WritableSignal; scrollXHeight: _angular_core.WritableSignal; scrollXWidth: _angular_core.WritableSignal; scrollLeft: _angular_core.WritableSignal; scrollLeftMax: _angular_core.WritableSignal; scrollTop: _angular_core.WritableSignal; rowChecked: _angular_core.WritableSignal; headCheckboxList: _angular_core.WritableSignal; rowExpand: _angular_core.WritableSignal; headExpandList: _angular_core.WritableSignal; dataIsFunc: _angular_core.WritableSignal; getting: _angular_core.WritableSignal; tableData: _angular_core.WritableSignal; treeTableData: _angular_core.WritableSignal; checkedValues: _angular_core.WritableSignal<{ [prop: string]: boolean; }>; indeterminate: _angular_core.WritableSignal; table: _angular_core.Signal>; caption: _angular_core.Signal | undefined>; pagination: _angular_core.Signal; stickyTopRightEle: _angular_core.Signal | undefined>; stickyBottomRightEle: _angular_core.Signal | undefined>; headCom: _angular_core.Signal; bodyCom: _angular_core.Signal; footCom: _angular_core.Signal; getScrollLeft: _angular_core.Signal; getScrollTop: _angular_core.Signal; getRowHeight: _angular_core.Signal; getStickyTopScrollTop: _angular_core.Signal; getStickyBottomScrollTop: _angular_core.Signal; getStickyTopRightEleHeight: _angular_core.Signal; getStickyBottomRightEleHeight: _angular_core.Signal; hasStickyTopRight: _angular_core.Signal; hasStickyTopRightSearch: _angular_core.Signal; hasStickyBottomRight: _angular_core.Signal; cellConfigSignal: _angular_core.Signal<{ thead: { gridTemplateColumns: string; cells: XTableCell[]; } | undefined; tbody: { gridTemplateColumns: string; cells: XTableCell[]; } | undefined; } | undefined>; tbodyHeight: _angular_core.WritableSignal; tbodyScrollHeight: _angular_core.WritableSignal; ngOnInit(): void; ngOnChanges(simples: SimpleChanges): void; ngAfterViewChecked(): void; ngOnDestroy(): void; setPaginationPosition(position: SimpleChange): void; getSticky(column: XTableColumn | XTableCell): boolean; getStickyLeft(column: XTableColumn | XTableCell): boolean; getStickyLeftLast(column: XTableColumn | XTableCell): boolean; getStickyRight(column: XTableColumn | XTableCell): boolean; getStickyRightFirst(column: XTableColumn | XTableCell): boolean; getIndex(index: number): number; setData(): void; getDataByFunc(): void; setManual(): void; setRowChecked(): void; setRowExpand(): void; isExpandColumn(column: XTableColumn): boolean; pageChange(_type: 'index' | 'size'): void; change(index: number): void; resetScroll(x?: boolean, y?: boolean): void; setChecked(data: XTableRow[]): void; setHeadCheckboxList(data: XTableRow[]): void; setExpand(data: XTableRow[]): void; setExpandedAll(): void; checkSort(sort: XSort[]): void; headChecked(checked: boolean, column: XTableColumn): void; setCheckbox(rows: XTableRow[], column: XTableColumn): void; bodyChecked(column: XTableColumn, row: XTableRow): void; setCheckedValues(column: XTableColumn): void; detectChanges(): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵcmp: _angular_core.ɵɵComponentDeclaration; } declare class XTableModule { static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵmod: _angular_core.ɵɵNgModuleDeclaration; static ɵinj: _angular_core.ɵɵInjectorDeclaration; } export { XTableBodyComponent, XTableBodyPrefix, XTableBodyProperty, XTableComponent, XTableFootComponent, XTableFootPrefix, XTableFootProperty, XTableHeadComponent, XTableHeadPrefix, XTableHeadProperty, XTableModule, XTablePrefix, XTableProperty }; export type { XColumnType, XPaginationPosition, XTableCell, XTableCellConfig, XTableCellConfigRule, XTableColumn, XTableDragWidthEvent, XTableHeadCheckbox, XTableHeaderPosition, XTableRow, XTableTemplate };