package ink.wgink.common.service.api;

import freemarker.template.TemplateException;
import ink.wgink.pojo.dtos.permission.SystemApiDTO;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;
import java.util.Map;

/**
 * @ClassName: IApiInfoService
 * @Description: API
 * @Author: wanggeng
 * @Date: 2021/8/15 4:05 下午
 * @Version: 1.0
 */
public interface IApiInfoService {
    /**
     * 获取系统API
     *
     * @param group
     * @param apiType
     * @param request
     * @return
     */
    SystemApiDTO getSystemApi(String group, String apiType, HttpServletRequest request);

    /**
     * 获取API
     *
     * @param apiTypes
     * @return
     */
    Map<String, Object> getApi(List<String> apiTypes);

    /**
     * 下载文档
     *
     * @param request
     * @param response
     * @throws IOException
     * @throws TemplateException
     */
    void get(HttpServletRequest request, HttpServletResponse response) throws IOException, TemplateException;
}
