import { createPinia } from 'pinia';
import type { App } from 'vue';

// 导入模块
import userModule from './modules/user';
import appModule from './modules/app';

// 创建 pinia 实例
const pinia = createPinia();

// 导出各个模块的 store
export const useUserStore = userModule.store;
export const useAppStore = appModule.store;

// 导出 store 实例
export const store = {
  // 安装 pinia 插件
  install(app: App) {
    app.use(pinia);
    
    // 在 pinia 安装后初始化 store 状态
    this.initializeStores();
  },
  
  // 初始化所有 store
  initializeStores() {
    // 恢复用户状态
    const userStore = useUserStore();
    userStore.restoreFromStorage();
    
    // 初始化app状态
    const appStore = useAppStore();
    appStore.initResizeListener();
  }
};

// 默认导出 store 实例
export default store; 