import PropTypes from 'prop-types';
import StatusItem from '../../atom/status-item';
import ButtonLink from '../../atom/button-link';
import BulletPointMenuButton from '../bullet-point-menu-button';
const columnProptypes = PropTypes.shape({
  title: PropTypes.string.isRequired
});
const rowProptypes = PropTypes.shape({
  fields: PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.string, PropTypes.shape({
    ...StatusItem.propTypes,
    type: PropTypes.oneOf(['status'])
  })])),
  isRowExpandible: PropTypes.bool,
  lastField: PropTypes.oneOfType([PropTypes.string, PropTypes.shape({
    ...BulletPointMenuButton.propTypes,
    type: PropTypes.oneOf(['menu'])
  })])
});
export const propTypes = {
  columns: PropTypes.arrayOf(columnProptypes),
  rows: PropTypes.arrayOf(rowProptypes),
  stickyFirstColumn: PropTypes.bool,
  stickyLastColumn: PropTypes.bool,
  columnWidth: PropTypes.string,
  ariaDescribedby: PropTypes.string,
  lastField: PropTypes.oneOfType([PropTypes.shape({
    ...ButtonLink.propTypes,
    componentType: PropTypes.oneOf(['button-link'])
  }), PropTypes.shape({
    ...BulletPointMenuButton.propTypes,
    componentType: PropTypes.oneOf(['menu'])
  })]),
  isNestedTable: PropTypes.bool,
  emptyStateFirstMessage: PropTypes.string,
  emptyStateSecondMessage: PropTypes.string
};
//# sourceMappingURL=types.js.map