import { Module } from 'vuex';
import { StateInterface } from 'src/store';
import routes from './routes';
import { FG_Plugin } from 'src/plugins';
import balance, { BalanceInterface } from './store/balance';

const plugin: FG_Plugin.Plugin = {
  name: 'Balance',
  mainRoutes: routes,
  requiredModules: ['User'],
  requiredBackendModules: ['balance'],
  version: '0.0.1',
  store: new Map<string, Module<BalanceInterface, StateInterface>>([
    ['balance', balance]
  ]),
  widgets: [
    {
      priority: 0,
      name: 'current',
      permissions: ['balance_show'],
      widget: () => import('./components/Widget.vue')
    }
  ]
};

export default plugin;