
/**
 * 基础
 */
export type VqdTaskTemplateBaseRes = {
  data: string;
};

/**
 * 查询列表响应
 */
export type VqdTaskTemplateRes = {
  items: VqdTaskTemplateItem[];
  /**
   * 总数
   */
  total: number;
};


/**
 * 项
 */
export type VqdTaskTemplateItem = {
  id: number;
  name: string;
  is_default: boolean;
  vqd_config: VqdConfig;
  vqd_lgt_dark: VqdLgtDark;
  vqd_blue: VqdBlue;
  vqd_clarity: VqdClarity;
  vqd_shark: VqdShark;
  vqd_freeze: VqdFreeze;
  vqd_color: VqdColor;
  vqd_occlusion: VqdOcclusion;
  vqd_noise: VqdNoise;
  vqd_contrast: VqdContrast;
  vqd_mosaic: VqdMosaic;
  vqd_flower: VqdFlower;
  created_at?: string;
  updated_at?: string;
  des: string;

};
/**
 * 创建请求
 */
export type VqdTaskTemplateReq = {
  /**
   * 名称模糊搜索
   */
  name?: string;
  /**
   * 页码(1~N)
   */
  page: number;
  /**
   * 单页元素数量(10~100)
   */
  size: number;

}
export type VqdConfig = {
  enable: boolean;
  frm_num: number;
  is_deep_learn: boolean;
}
export type VqdLgtDark = {
  enable: boolean;
  dark_thr: number;
  lgt_thr: number;
  lgt_dark_abn_num_ratio: number;
}
export type VqdBlue = {
  enable: boolean;
  blue_thr: number;
  blue_abn_num_ratio: number;
}
export type VqdClarity = {
  enable: boolean;
  clarity_thr: number;
  clarity_abn_num_ratio: number;
}
export type VqdShark = {
  enable: boolean;
  shark_thr: number;
  shark_abn_num_ratio: number;
}
export type VqdFreeze = {
  enable: boolean;
  freeze_thr: number;
  freeze_abn_num_ratio: number;
}
export type VqdColor = {
  enable: boolean;
  color_thr: number;
  color_abn_num_ratio: number;
}
export type VqdOcclusion = {
  enable: boolean;
  occlusion_thr: number;
  occlusion_abn_num_ratio: number;
}
export type VqdNoise = {
  enable: boolean;
  noise_thr: number;
  noise_abn_num_ratio: number;
}
export type VqdContrast = {
  enable: boolean;
  ctra_low_thr: number;
  ctra_high_thr: number;
  ctra_abn_num_ratio: number;
}
export type VqdMosaic = {
  enable: boolean;
  mosaic_thr: number;
  mosaic_abn_num_ratio: number;
}
export type VqdFlower = {
  enable: boolean;
  flower_thr: number;
  flower_abn_num_ratio: number;
  mosaic_thr: number;
}

export type CreateVqdTaskTemplateReq = {
  /**
   * 名称
   */
  name: string;
  vqd_config: VqdConfig;
  vqd_lgt_dark: VqdLgtDark;
  vqd_blue: VqdBlue;
  vqd_clarity: VqdClarity;
  vqd_shark: VqdShark;
  vqd_freeze: VqdFreeze;
  vqd_color: VqdColor;
  vqd_occlusion: VqdOcclusion;
  vqd_noise: VqdNoise;
  vqd_contrast: VqdContrast;
  vqd_mosaic: VqdMosaic;
  vqd_flower: VqdFlower;
  /**
   * 描述
   */
  des: string;
};

/**
 * 更新请求
 */
export type UpdateVqdTaskTemplateReq = Partial<CreateVqdTaskTemplateReq> & {
  /**
   * ID
   */
  id: string;
};

/**
 * 详情响应（Apifox 未提供具体结构，这里用通用对象）
 */
export type VqdTaskTemplateDetailRes = {
  id: number;
  name: string;
  is_default: boolean;
  vqd_config: VqdConfig;
  vqd_lgt_dark: VqdLgtDark;
  vqd_blue: VqdBlue;
  vqd_clarity: VqdClarity;
  vqd_shark: VqdShark;
  vqd_freeze: VqdFreeze;
  vqd_color: VqdColor;
  vqd_occlusion: VqdOcclusion;
  vqd_noise: VqdNoise;
  vqd_contrast: VqdContrast;
  vqd_mosaic: VqdMosaic;
  vqd_flower: VqdFlower;
  created_at?: string;
  updated_at?: string;
  des: string;
}