import '../../../../utils/index.mjs';
import { buildProps, definePropType } from '../../../../utils/props/runtime.mjs';

"use strict";
const proTableContentType = ["table", "card"];
const proTableOperatePosition = ["normal", "left", "right"];
const proMainTableProps = buildProps({
  /**
   * @description 动态插槽显示card和table
   */
  operateWidth: {
    type: Number,
    default: 125
  },
  operateTitle: {
    type: String,
    default: "\u64CD\u4F5C"
  },
  operatePosition: {
    type: String,
    values: proTableOperatePosition,
    default: "normal"
  },
  rowKey: {
    type: String || Function,
    default: "key"
  },
  showHeader: {
    type: Boolean,
    default: true
  },
  /**
   * @description 动态插槽显示card和table
   */
  contentType: {
    type: String,
    values: proTableContentType,
    default: "table"
  },
  /**
   * @description 操作栏编辑操作列的key,用于下次记录用户行为
   */
  settingKey: {
    type: String,
    default: ""
  },
  /**
   * @description 列设置
   */
  columns: {
    type: definePropType(Array),
    default: () => []
  },
  /**
   * @description 空状态熟悉
   */
  emptyProps: {
    type: definePropType(Object),
    default: () => []
  },
  /**
   * @description 数据源
   */
  dataSource: {
    type: definePropType(Array),
    default: () => []
  },
  /**
   * @description 是否数据拖拽
   */
  showDrag: {
    type: Boolean
  },
  /**
   * @description  是否显示#序列
   */
  showIndexColumn: {
    type: Boolean,
    default: true
  },
  indexColumnTitle: {
    type: String,
    default: "#"
  },
  // 序列标题
  indexColumnWidth: {
    type: Number,
    default: 50
  },
  // 序列标题
  /**
   * @description  展示操作列的
   */
  showOperate: {
    type: Boolean,
    default: true
  },
  /**
   * @description  是否显示操作栏上的设置
   */
  showSetting: {
    type: Boolean,
    default: true
  },
  /**
   * @description  table的scroll
   */
  scroll: {
    type: definePropType(Object),
    default: () => ({
      y: "100%"
    })
  },
  /**
   * @description  展开的key
   */
  expandedRowKeys: {
    type: definePropType(Array)
  },
  /**
   * @description 是否隐藏分页
   */
  hiddenPagination: {
    type: Boolean
  },
  /**
   * @description 设置行属性同表格的customRow属性
   */
  customRowProps: {
    type: Function
  },
  /**
   * @description 点击展开图标时触发
   */
  expand: {
    type: Function
  },
  /**
   * @description 分页、排序、筛选变化时触发
   */
  change: {
    type: Function
  },
  /**
   * @description 展开的行变化时触发
   */
  expandedRowsChange: {
    type: Function
  },
  /**
   * @description 拖动列改变列的宽度时触发
   */
  resizeColumn: {
    type: Function
  },
  /**
   * @description 拖拽后的change
   */
  dragChange: {
    type: Function
  }
});
const proMainTableEmits = {
  handleChangeDataSource: (dataSource) => !!dataSource
};

export { proMainTableEmits, proMainTableProps, proTableContentType, proTableOperatePosition };
//# sourceMappingURL=main-table.mjs.map
