import type { App } from "vue"; import components from "./components"; import Network from "./utils/Network"; import UserAPI from "./api/UserAPI"; import CommonAPI from "./api/CommonAPI"; import CommentAPI from "./api/CommentAPI"; import DeveloperAPI from "./api/DeveloperAPI"; import Time from "./utils/Time"; import IOSize from "./utils/IOSize"; import Events from "./utils/Events"; import Cooker from "./utils/Cooker"; import Toolkit from "./utils/Toolkit"; import Resizer from "./utils/Resizer"; import Storage from "./utils/Storage"; import Prismjs from "./utils/Prismjs"; import Markdown from "./utils/Markdown"; import Scroller from "./utils/Scroller"; import IconMapper from "./utils/IconMapper"; import SettingMapper from "./utils/SettingMapper"; import VPopup from "./utils/directives/Popup"; import VDraggable from "./utils/directives/Draggable"; import { userStore } from "./store/user"; import { deviceStore } from "./store/device"; import "./assets/style/variable.less"; import "./assets/style/timi-web.less"; export * from "./components"; export * from "./types/Model"; export * from "./types/User"; export * from "./types/Comment"; export * from "./types/Setting"; export * from "./types/Template"; export * from "./types/Developer"; export * from "./types/Attachment"; export * from "./utils/Prismjs"; export * from "./utils/directives/Popup"; export type { ScrollListener } from "./utils/Scroller"; export type { DraggableConfig } from "./utils/directives/Draggable"; export type { PopupConfig } from "./utils/directives/Popup"; const install = function (app: App) { components.forEach(component => { app.use(component as unknown as { install: () => any }); }); }; const axios = Network.axios; export default { install }; export { axios, Network, UserAPI, CommonAPI, CommentAPI, DeveloperAPI, userStore, deviceStore, Time, Events, IOSize, Cooker, Toolkit, Resizer, Storage, Prismjs, Markdown, Scroller, IconMapper, SettingMapper, VPopup, VDraggable };