/**
 * Namespace Api
 *
 * All backend api type
 */
declare namespace Api {
  /**
   * namespace Art
   *
   * backend api module: "Art"
   */
  namespace Art {
    /** school enroll plan */
    type SchoolEnrollPlan = Common.CommonRecord<{
      /** 主键ID */
      planId: CommonType.IdType;
      /** 租户编号 */
      tenantId: CommonType.IdType;
      /** 学校ID */
      schoolId: CommonType.IdType;
      /** 年份 */
      year: number;
      /** 招生省份 */
      province: string;
      /** 分科：文/理/综(或物理/历史...) */
      subjectType: string;
      /** 专业ID(可选，有则填) */
      majorId: CommonType.IdType;
      /** 专业名称(冗余，没专业ID也能落库) */
      majorName: string;
      /** 学历层次：本科/专科 */
      educationLevel: string;
      /** 计划数 */
      planNum: number;
      /** 删除标志（0代表存在 1代表删除） */
      delFlag: string;
      /** 备注 */
      remark: string;
    }>;

    /** school enroll plan search params */
    type SchoolEnrollPlanSearchParams = CommonType.RecordNullable<
      Pick<
        Api.Art.SchoolEnrollPlan,
        'schoolId' | 'year' | 'province' | 'subjectType' | 'majorId' | 'majorName' | 'educationLevel' | 'planNum'
      > &
        Api.Common.CommonSearchParams
    >;

    /** school enroll plan operate params */
    type SchoolEnrollPlanOperateParams = CommonType.RecordNullable<
      Pick<
        Api.Art.SchoolEnrollPlan,
        | 'planId'
        | 'schoolId'
        | 'year'
        | 'province'
        | 'subjectType'
        | 'majorId'
        | 'majorName'
        | 'educationLevel'
        | 'planNum'
        | 'remark'
      >
    >;

    /** school enroll plan list */
    type SchoolEnrollPlanList = Api.Common.PaginatingQueryRecord<SchoolEnrollPlan>;
  }
}
