/* eslint-disable */
// @ts-nocheck
declare namespace API {
  type BpmOALeaveCreateReqVO = {
    /** 请假的开始时间 */
    startTime: string;
    /** 请假的结束时间 */
    endTime: string;
    /** 请假类型-参见 bpm_oa_type 枚举 */
    type: number;
    /** 原因 */
    reason: string;
    /** 发起人自选审批人 Map */
    startUserSelectAssignees?: Record<string, any>;
    endTimeValid?: boolean;
  };

  type BpmOALeavePageReqVO = {
    currentPage?: number;
    pageSize?: number;
    doSearchTotal?: boolean;
    /** 状态 */
    status?: number;
    /** 请假类型，参见 bpm_oa_type */
    type?: number;
    /** 原因，模糊匹配 */
    reason?: string;
    /** 申请时间 */
    createTime?: string[];
  };

  type BpmOALeaveRespVO = {
    /** 请假表单主键 */
    id: number;
    /** 请假类型，参见 bpm_oa_type 枚举 */
    type: number;
    /** 原因 */
    reason: string;
    /** 申请时间 */
    createTime: string;
    /** 请假的开始时间 */
    startTime: string;
    /** 请假的结束时间 */
    endTime: string;
    /** 流程编号 */
    processInstanceId?: string;
    /** 审批结果 */
    status: number;
  };

  type getBpmOaLeaveGetParams = {
    /** 编号 */
    id: string;
  };

  type PageDataBpmOALeaveRespVO = {
    currentPage?: number;
    pageSize?: number;
    doSearchTotal?: boolean;
    records?: BpmOALeaveRespVO[];
    total?: number;
  };

  type ResponseDataBpmOALeaveRespVO = {
    code?: number;
    msg?: string;
    hint?: string;
    data?: BpmOALeaveRespVO;
    success?: boolean;
  };

  type ResponseDataPageDataBpmOALeaveRespVO = {
    code?: number;
    msg?: string;
    hint?: string;
    data?: PageDataBpmOALeaveRespVO;
    success?: boolean;
  };

  type ResponseDataString = {
    code?: number;
    msg?: string;
    hint?: string;
    data?: string;
    success?: boolean;
  };
}
