export interface TypeVO {
  /**
   * 主键，自增ID
   */
  id: string | number;

  /**
   * 显示名称，如"主赛"、"酒店券"
   */
  name: string;

  /**
   * 业务类型编码（全局唯一），取值及含义如下：
- root: 道具根节点（仅用于构建分类树，不可发放）
- online_ticket: 线上参赛
- offline_ticket: 线下参赛
- voucher: 服务券
- combo_package: 多种道具组合服务包
- other_tools: 其他道具

- online_ticket_card: 普通参赛卡（可报名任意线上赛事）
- main_tournament: 主赛
- side_tournament: 附赛
- hotel_voucher: 酒店
- common_ticket: 通用服务券
   */
  typeCode: string;

  /**
   * 运营配置的整数类型ID（全局唯一），如 1001=主赛, 2001=酒店券，用于代码逻辑判断或外部系统对接
   */
  typeValue: number;

  /**
   * 父级ID，NULL表示顶级节点
   */
  parentId: string | number;

  /**
   * 状态：enabled=启用，disabled=禁用
   */
  status: string;

  /**
   * 创建时间
   */
  createdAt: string;

  /**
   * 更新时间
   */
  updatedAt: string;
}

export interface TypeForm extends BaseEntity {
  /**
   * 主键，自增ID
   */
  id?: string | number;

  /**
   * 显示名称，如"主赛"、"酒店券"
   */
  name?: string;

  /**
   * 业务类型编码（全局唯一），取值及含义如下：
- root: 道具根节点（仅用于构建分类树，不可发放）
- online_ticket: 线上参赛
- offline_ticket: 线下参赛
- voucher: 服务券
- combo_package: 多种道具组合服务包
- other_tools: 其他道具

- online_ticket_card: 普通参赛卡（可报名任意线上赛事）
- main_tournament: 主赛
- side_tournament: 附赛
- hotel_voucher: 酒店
- common_ticket: 通用服务券
   */
  typeCode?: string;

  /**
   * 运营配置的整数类型ID（全局唯一），如 1001=主赛, 2001=酒店券，用于代码逻辑判断或外部系统对接
   */
  typeValue?: number;

  /**
   * 父级ID，NULL表示顶级节点
   */
  parentId?: string | number;

  /**
   * 状态：enabled=启用，disabled=禁用
   */
  status?: string;
  groupType?: string;

  /**
   * 创建时间
   */
  createdAt?: string;

  /**
   * 更新时间
   */
  updatedAt?: string;
}

export interface TypeQuery extends PageQuery {

  /**
   * 显示名称，如"主赛"、"酒店券"
   */
  name?: string;

  /**
   * 业务类型编码（全局唯一），取值及含义如下：
- root: 道具根节点（仅用于构建分类树，不可发放）
- online_ticket: 线上参赛
- offline_ticket: 线下参赛
- voucher: 服务券
- combo_package: 多种道具组合服务包
- other_tools: 其他道具

- online_ticket_card: 普通参赛卡（可报名任意线上赛事）
- main_tournament: 主赛
- side_tournament: 附赛
- hotel_voucher: 酒店
- common_ticket: 通用服务券
   */
  typeCode?: string;

  /**
   * 运营配置的整数类型ID（全局唯一），如 1001=主赛, 2001=酒店券，用于代码逻辑判断或外部系统对接
   */
  typeValue?: number;

  /**
   * 父级ID，NULL表示顶级节点
   */
  parentId?: string | number;

  /**
   * 状态：enabled=启用，disabled=禁用
   */
  status?: string;

  /**
   * 创建时间
   */
  createdAt?: string;

  /**
   * 更新时间
   */
  updatedAt?: string;

  /**
   * 日期范围参数
   */
  params?: any;
}
