UNPKG

chowa

Version:

UI component library based on React

60 lines (59 loc) 1.9 kB
/** * @license chowa v1.1.3 * * Copyright (c) Chowa Techonlogies Co.,Ltd.(http://www.chowa.cn). * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ import * as React from 'react'; import { Data, UpdateParams, ColumnsWidthMap, FilterInfo, SorterInfo } from './table'; import { TableColumnProps, DataIndex } from './table-column'; export declare type HeaderColumn = TableColumnProps & { parentIndexs?: number[]; }; export interface HeaderRow { tier: number; tiers: number[]; cells: number[]; columns: HeaderColumn[]; } export interface TableHeaderProps { data: Data; globalAlign: 'left' | 'right' | 'center'; columns: TableColumnProps[]; columnsWidthMap: ColumnsWidthMap; resizeable: boolean; dataIndexs: DataIndex[]; headerRowAttr: (rowIndex: number) => React.Attributes; filterInfo: FilterInfo; sorterInfo: SorterInfo; updateTable: (params: UpdateParams) => void; expanded: boolean; selectable: boolean; selectedIndexs: React.ReactText[]; onSelectAll: () => void; onDeSelectAll: () => void; fixed?: 'left' | 'right'; headerHeight?: number; draggable?: boolean; columnDragSorter?: (dragIndex: number, dropIndex: number, parentIndexs: number[]) => void; } export interface TableHeaderState { headerRows: HeaderRow[]; } declare class TableHeader extends React.PureComponent<TableHeaderProps, TableHeaderState> { private dragStartX; private dragDataIndex; private dragDataIndexWidth; constructor(props: TableHeaderProps); private onSelectionChange; componentDidUpdate(preProps: TableHeaderProps): void; private onResizeMove; private onResizeEnd; private onCellResize; private compileHeaderRows; private renderRow; render(): React.ReactNode; } export default TableHeader;