import React from 'react'; import PropTypes from 'prop-types'; import type { ColumnShape, RowData, RowKey, RowEventHandlers } from './types'; export interface TableRowProps { isScrolling?: boolean; className?: string; style?: React.CSSProperties; columns: ColumnShape[]; rowData: RowData; rowIndex: number; rowKey?: RowKey; expandColumnKey?: string; depth?: number; rowEventHandlers?: RowEventHandlers; rowRenderer?: React.ComponentType | React.ReactElement | ((props: any) => React.ReactNode); cellRenderer?: (args: any) => React.ReactNode; expandIconRenderer?: (args: any) => React.ReactNode; estimatedRowHeight?: number | ((args: { rowData: RowData; rowIndex: number; }) => number); getIsResetting?: () => boolean; onRowHover?: (args: { hovered: boolean; rowData: RowData; rowIndex: number; rowKey: RowKey; event: React.SyntheticEvent; }) => void; onRowExpand?: (args: { expanded: boolean; rowData: RowData; rowIndex: number; rowKey: RowKey; }) => void; onRowHeightChange?: (rowKey: RowKey, height: number, rowIndex: number, frozen?: any) => void; tagName?: React.ElementType; [key: string]: any; } interface TableRowState { measured: boolean; } /** * Row component for BaseTable */ declare class TableRow extends React.PureComponent { ref: HTMLElement | null; static defaultProps: { tagName: string; }; static propTypes: { isScrolling: PropTypes.Requireable; className: PropTypes.Requireable; style: PropTypes.Requireable; columns: PropTypes.Validator<(object | null | undefined)[]>; rowData: PropTypes.Validator; rowIndex: PropTypes.Validator; rowKey: PropTypes.Requireable>; expandColumnKey: PropTypes.Requireable; depth: PropTypes.Requireable; rowEventHandlers: PropTypes.Requireable; rowRenderer: PropTypes.Requireable any) | PropTypes.ReactElementLike | null | undefined>>; cellRenderer: PropTypes.Requireable<(...args: any[]) => any>; expandIconRenderer: PropTypes.Requireable<(...args: any[]) => any>; estimatedRowHeight: PropTypes.Requireable any) | null | undefined>>; getIsResetting: PropTypes.Requireable<(...args: any[]) => any>; onRowHover: PropTypes.Requireable<(...args: any[]) => any>; onRowExpand: PropTypes.Requireable<(...args: any[]) => any>; onRowHeightChange: PropTypes.Requireable<(...args: any[]) => any>; tagName: PropTypes.Requireable; }; constructor(props: TableRowProps); componentDidMount(): void; componentDidUpdate(prevProps: TableRowProps, prevState: TableRowState): void; render(): React.JSX.Element; _setRef(ref: HTMLElement | null): void; _handleExpand(expanded: boolean): void; _measureHeight(initialMeasure?: boolean): void; _getEventHandlers(handlers?: Record): Record void>; } export default TableRow;