choerodon-ui
Version:
An enterprise-class UI design language and React-based implementation
114 lines (113 loc) • 4.89 kB
TypeScript
import * as React from 'react';
import PropTypes from 'prop-types';
import { StandardProps, RowDataType } from './common';
export interface CellProps extends StandardProps {
align?: 'left' | 'center' | 'right';
verticalAlign?: 'top' | 'middle' | 'bottom';
className?: string;
classPrefix?: string;
dataKey?: string;
isHeaderCell?: boolean;
width?: number;
height?: number | ((rowData: object) => number);
left?: number;
headerHeight?: number;
style?: React.CSSProperties;
firstColumn?: boolean;
lastColumn?: boolean;
hasChildren?: boolean;
children?: React.ReactNode | ((rowData: RowDataType, rowIndex: number) => React.ReactNode);
rowKey?: string | number;
rowIndex?: number;
rowSpan?: number;
rowData?: RowDataType;
depth?: number;
onTreeToggle?: (rowKey?: string | number, rowIndex?: number, rowData?: RowDataType, event?: React.MouseEvent) => void;
renderTreeToggle?: (expandButton: React.ReactNode, rowData?: RowDataType, expanded?: boolean) => React.ReactNode;
renderCell?: (contentChildren: any) => React.ReactNode;
wordWrap?: boolean;
hidden?: boolean;
treeCol?: boolean;
expanded?: boolean;
isDragging?: boolean;
}
export declare const propTypes: {
align: PropTypes.Requireable<string>;
verticalAlign: PropTypes.Requireable<string>;
className: PropTypes.Requireable<string>;
classPrefix: PropTypes.Requireable<string>;
dataKey: PropTypes.Requireable<string>;
isHeaderCell: PropTypes.Requireable<boolean>;
width: PropTypes.Requireable<number>;
height: PropTypes.Requireable<number | ((...args: any[]) => any)>;
left: PropTypes.Requireable<number>;
headerHeight: PropTypes.Requireable<number>;
style: PropTypes.Requireable<object>;
firstColumn: PropTypes.Requireable<boolean>;
lastColumn: PropTypes.Requireable<boolean>;
hasChildren: PropTypes.Requireable<boolean>;
children: PropTypes.Requireable<any>;
rowKey: PropTypes.Requireable<string | number>;
rowIndex: PropTypes.Requireable<number>;
rowData: PropTypes.Requireable<object>;
depth: PropTypes.Requireable<number>;
onTreeToggle: PropTypes.Requireable<(...args: any[]) => any>;
renderTreeToggle: PropTypes.Requireable<(...args: any[]) => any>;
renderCell: PropTypes.Requireable<(...args: any[]) => any>;
wordWrap: PropTypes.Requireable<boolean>;
hidden: PropTypes.Requireable<boolean>;
treeCol: PropTypes.Requireable<boolean>;
expanded: PropTypes.Requireable<boolean>;
groupHeader: PropTypes.Requireable<PropTypes.ReactNodeLike>;
groupCount: PropTypes.Requireable<number>;
isDragging: PropTypes.Requireable<boolean>;
};
declare class Cell extends React.PureComponent<CellProps> {
static get contextType(): React.Context<import("./TableContext").Props>;
static propTypes: {
align: PropTypes.Requireable<string>;
verticalAlign: PropTypes.Requireable<string>;
className: PropTypes.Requireable<string>;
classPrefix: PropTypes.Requireable<string>;
dataKey: PropTypes.Requireable<string>;
isHeaderCell: PropTypes.Requireable<boolean>;
width: PropTypes.Requireable<number>;
height: PropTypes.Requireable<number | ((...args: any[]) => any)>;
left: PropTypes.Requireable<number>;
headerHeight: PropTypes.Requireable<number>;
style: PropTypes.Requireable<object>;
firstColumn: PropTypes.Requireable<boolean>;
lastColumn: PropTypes.Requireable<boolean>;
hasChildren: PropTypes.Requireable<boolean>;
children: PropTypes.Requireable<any>;
rowKey: PropTypes.Requireable<string | number>;
rowIndex: PropTypes.Requireable<number>;
rowData: PropTypes.Requireable<object>;
depth: PropTypes.Requireable<number>;
onTreeToggle: PropTypes.Requireable<(...args: any[]) => any>;
renderTreeToggle: PropTypes.Requireable<(...args: any[]) => any>;
renderCell: PropTypes.Requireable<(...args: any[]) => any>;
wordWrap: PropTypes.Requireable<boolean>;
hidden: PropTypes.Requireable<boolean>;
treeCol: PropTypes.Requireable<boolean>;
expanded: PropTypes.Requireable<boolean>;
groupHeader: PropTypes.Requireable<PropTypes.ReactNodeLike>;
groupCount: PropTypes.Requireable<number>;
isDragging: PropTypes.Requireable<boolean>;
};
static defaultProps: {
classPrefix: string;
headerHeight: number;
depth: number;
height: number;
width: number;
left: number;
};
addPrefix: (name: string) => string;
isTreeCol(): boolean;
getHeight(): any;
handleExpandClick: (event: React.MouseEvent<Element, MouseEvent>) => void;
renderTreeNodeExpandIcon(): JSX.Element | null;
render(): JSX.Element | null;
}
export default Cell;