import { createAlova } from 'alova';
import fetchAdapter from 'alova/fetch';
{{#vue}}
import vueHook from 'alova/vue';
{{/vue}}
{{#react}}
import reactHook from 'alova/react';
{{/react}}
import { createApis, withConfigType, mountApis } from './createApis'; 

export const alovaInstance = createAlova({ 
  baseURL: "{{{baseUrl}}}",
{{#vue}}
  statesHook: vueHook,
{{/vue}}
{{#react}}
  statesHook: reactHook,
{{/react}}
  requestAdapter: fetchAdapter(), 
  beforeRequest: method => { }, 
  responded: res => { 
    return res.json(); 
  } 
}); 

export const $$userConfigMap = withConfigType({}); 

/** 
 * @type {{#raw "{ " }}{{/raw}}{{{global}}}{{#raw " }" }}{{/raw}}
 */ 
const Apis = createApis(alovaInstance, $$userConfigMap);

mountApis(Apis);

export default Apis;