// @ts-ignore
/* eslint-disable */
import { request } from '@umijs/max';

/** 创建基础ProjectModelConfig POST /project_model_config/createProjectModelConfig */
export async function postProjectModelConfigCreateProjectModelConfig(
  body: API.ProjectModelConfig,
  options?: { [key: string]: any },
) {
  return request<API.Response & { msg?: string }>(
    `/api/v1/project_model_config/createProjectModelConfig`,
    {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json',
      },
      data: body,
      ...(options || {}),
    },
  );
}

/** 删除ProjectModelConfig DELETE /project_model_config/deleteProjectModelConfig */
export async function deleteProjectModelConfigDeleteProjectModelConfig(
  body: API.ProjectModelConfig,
  options?: { [key: string]: any },
) {
  return request<API.Response & { msg?: string }>(
    `/api/v1/project_model_config/deleteProjectModelConfig`,
    {
      method: 'DELETE',
      headers: {
        'Content-Type': 'application/json',
      },
      data: body,
      ...(options || {}),
    },
  );
}

/** 删除选中ProjectModelConfig DELETE /project_model_config/deleteProjectModelConfigByIds */
export async function deleteProjectModelConfigDeleteProjectModelConfigByIds(
  body: API.IdsReq,
  options?: { [key: string]: any },
) {
  return request<API.Response & { msg?: string }>(
    `/api/v1/project_model_config/deleteProjectModelConfigByIds`,
    {
      method: 'DELETE',
      headers: {
        'Content-Type': 'application/json',
      },
      data: body,
      ...(options || {}),
    },
  );
}

/** 根据id获取ProjectModelConfig POST /project_model_config/getProjectModelConfigById */
export async function postProjectModelConfigGetProjectModelConfigById(
  body: API.GetById,
  options?: { [key: string]: any },
) {
  return request<API.Response & { data?: API.ProjectProjectModelConfigResponse }>(
    `/api/v1/project_model_config/getProjectModelConfigById`,
    {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json',
      },
      data: body,
      ...(options || {}),
    },
  );
}

/** 分页获取ProjectModelConfig列表 POST /project_model_config/getProjectModelConfigList */
export async function postProjectModelConfigGetProjectModelConfigList(
  body: API.SearchProjectModelConfigParams,
  options?: { [key: string]: any },
) {
  return request<API.Response & { data?: API.PageResult; msg?: string }>(
    `/api/v1/project_model_config/getProjectModelConfigList`,
    {
      method: 'POST',
      headers: {
        'Content-Type': 'application/json',
      },
      data: body,
      ...(options || {}),
    },
  );
}

/** 修改基础ProjectModelConfig PUT /project_model_config/updateProjectModelConfig */
export async function putProjectModelConfigUpdateProjectModelConfig(
  body: API.ProjectModelConfig,
  options?: { [key: string]: any },
) {
  return request<API.Response & { msg?: string }>(
    `/api/v1/project_model_config/updateProjectModelConfig`,
    {
      method: 'PUT',
      headers: {
        'Content-Type': 'application/json',
      },
      data: body,
      ...(options || {}),
    },
  );
}
