import type { DataModel } from "@imengyu/js-request-transform";
import { RequestCoreInstance } from "./core/RequestCore";

/**
 * 基础请求模块
 *
 * 说明：
 *  此处提供的是一个默认请求模块，演示了如何写自己的请求模块，
 *  你可以参照这个类来写你自己的请求模块，并添加拦截器、错误处理、数据处理等等功能。
 *
 * Author: imengyu
 * Date: 2022/03/25
 *
 * Copyright (c) 2021 imengyu.top. Licensed under the MIT License.
 * See License.txt in the project root for license information.
 */


/**
 * 基础请求模块
 * @deprecated 请使用 AuthServerRequestModule 或 AppServerRequestModule
 */
export class DefaultRequestModule<T extends DataModel> extends RequestCoreInstance<T> {
  constructor() {
    super();
    this.config.requestInceptor = (url, req) => {
      //登录相关Token添加
      return { newUrl: url, newReq: req };
    };
  }
}

export default new DefaultRequestModule<DataModel>();
