import type { Plugin } from "@ice/app/types";
import * as path from "path";

interface PluginOptions {
  id: string;
}

const plugin: Plugin<PluginOptions> = () => ({
  // name 可选，插件名称
  name: "plugin-login-state",
  // setup 必选，用于定制工程构建配置
  setup: ({ generator }) => {
    generator.addExport({
      specifier: ["withLoginState", "useLoginState"],
      source: "../plugins/plugin-login-state/runtime.tsx",
    });

    generator.addRouteTypes({
      specifier: ["ConfigLoginState"],
      type: true,
      source: "../plugins/plugin-login-state/type.ts",
    });
  },
  // runtime 可选，用于定制运行时配置
  runtime: "../plugins/plugin-login-state/runtime.tsx",
});

export default plugin;
