import { Row } from '@tanstack/react-table'; import { CSSProperties } from 'react'; import { AnyColumn, ScrollShadowState } from './type'; /** * 展开面板 row 的 DOM id 协议 * * `DataTable` 渲染面板 row 时把这个 id 设到 `` 上, * `RowExpandToggle` 把它写进按钮的 `aria-controls`,二者必须保持一致 */ export declare const panelIdFor: (rowId: string) => string; /** * 计算固定列(sticky)需要的样式 */ export declare function getCommonPinningStyles(column: AnyColumn): CSSProperties; /** * 计算固定列阴影 className */ export declare function getColumnPinningClassName(column: AnyColumn, scrollShadow: ScrollShadowState): string; /** 单元格合并跨度 */ export type CellSpan = { rowSpan: number; colSpan: number; }; /** 内部存储:每行每列对应的跨度 */ export type CellSpanMap = Map>; /** * 根据每列 `meta.rowSpan` / `meta.colSpan` 计算每行每列的合并跨度 * * `0` 表示该单元格不应渲染(被合并掉了) */ export declare function computeCellSpans(rows: Row[], columns: AnyColumn[]): CellSpanMap;