xto-fronted 0.4.91 → 0.4.93

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (88) hide show
  1. package/dist/App.vue.d.ts +2 -0
  2. package/dist/api/auth.d.ts +8 -0
  3. package/dist/api/system.d.ts +16 -0
  4. package/dist/api/user.d.ts +13 -0
  5. package/dist/components/Layout/Footer.vue.d.ts +2 -0
  6. package/dist/components/Layout/Header.vue.d.ts +5 -0
  7. package/dist/components/Layout/MixTopMenu.vue.d.ts +5 -0
  8. package/dist/components/Layout/Sidebar.vue.d.ts +11 -0
  9. package/dist/components/Layout/SidebarMenuItem.vue.d.ts +5 -0
  10. package/dist/components/Layout/Tabs.vue.d.ts +2 -0
  11. package/dist/components/Layout/TopMenu.vue.d.ts +5 -0
  12. package/dist/components/Layout/index.vue.d.ts +2 -0
  13. package/dist/composables/useApp.d.ts +29 -0
  14. package/dist/composables/useAuth.d.ts +6 -0
  15. package/dist/composables/useForm.d.ts +20 -0
  16. package/dist/composables/useI18n.d.ts +30 -0
  17. package/dist/composables/useTable.d.ts +29 -0
  18. package/dist/directives/permission.d.ts +4 -0
  19. package/dist/enums/index.d.ts +32 -0
  20. package/dist/index-B4U8Dy2W.js +641 -0
  21. package/dist/index-Cp8kqjtv.js +515 -0
  22. package/dist/index-D59X6HmM.js +479 -0
  23. package/dist/index-lJrh5CFc.js +189 -0
  24. package/dist/index-me_Uu2lk.js +4270 -0
  25. package/dist/index.d.ts +59 -0
  26. package/dist/index.es.js +95 -0
  27. package/dist/index.umd.js +8 -0
  28. package/dist/main.d.ts +0 -0
  29. package/dist/router/dynamicRoutes.d.ts +30 -0
  30. package/dist/router/guards.d.ts +17 -0
  31. package/dist/router/index.d.ts +6 -0
  32. package/dist/router/layoutRoute.d.ts +22 -0
  33. package/dist/router/staticRoutes.d.ts +2 -0
  34. package/dist/stores/app.d.ts +93 -0
  35. package/dist/stores/auth.d.ts +41 -0
  36. package/dist/stores/index.d.ts +10 -0
  37. package/dist/stores/locale.d.ts +42 -0
  38. package/dist/stores/menu.d.ts +83 -0
  39. package/dist/stores/user.d.ts +92 -0
  40. package/dist/style.css +1 -0
  41. package/dist/utils/auth.d.ts +27 -0
  42. package/dist/utils/config.d.ts +30 -0
  43. package/dist/utils/permission.d.ts +17 -0
  44. package/dist/utils/request.d.ts +29 -0
  45. package/dist/utils/storage.d.ts +24 -0
  46. package/dist/views/dashboard/index.vue.d.ts +2 -0
  47. package/dist/views/error/403.vue.d.ts +2 -0
  48. package/dist/views/error/404.vue.d.ts +2 -0
  49. package/dist/views/login/index.vue.d.ts +4 -0
  50. package/dist/views/system/menu/index.vue.d.ts +4 -0
  51. package/dist/views/system/role/index.vue.d.ts +4 -0
  52. package/dist/views/system/user/index.vue.d.ts +4 -0
  53. package/package.json +1 -1
  54. package/src/components/Layout/Sidebar.vue +6 -6
  55. package/dist/assets/404-Bq0LY5Cd.js +0 -1
  56. package/dist/assets/404-Cw_4ZCL6.css +0 -1
  57. package/dist/assets/_plugin-vue_export-helper-DlAUqK2U.js +0 -1
  58. package/dist/assets/index-7ZZxpSfk.js +0 -1
  59. package/dist/assets/index-BJUe8VUp.js +0 -1
  60. package/dist/assets/index-BRR97dc6.js +0 -1
  61. package/dist/assets/index-BlOR_ICg.js +0 -1
  62. package/dist/assets/index-BlRslYYI.css +0 -1
  63. package/dist/assets/index-BudArKxR.css +0 -1
  64. package/dist/assets/index-BzbOWBCV.js +0 -1
  65. package/dist/assets/index-CFhWBbxk.css +0 -1
  66. package/dist/assets/index-CH6aTfYg.css +0 -1
  67. package/dist/assets/index-CT5f37nN.js +0 -1
  68. package/dist/assets/index-Ce-kjtEM.js +0 -2
  69. package/dist/assets/index-Cpew6d-v.css +0 -1
  70. package/dist/assets/index-DkkuYBgT.css +0 -1
  71. package/dist/assets/index-vfvEFrCH.css +0 -1
  72. package/dist/assets/index-wVLLAoVp.js +0 -1
  73. package/dist/assets/vendor-DZmPBJ9d.js +0 -16
  74. package/dist/assets/vue-vendor-DjmFuEnG.js +0 -29
  75. package/dist/assets/xto-base-B5HYOo6i.js +0 -1
  76. package/dist/assets/xto-base-CL2NKZJJ.css +0 -1
  77. package/dist/assets/xto-business--V1F5Gwb.css +0 -1
  78. package/dist/assets/xto-core-DZYp_YAR.js +0 -1
  79. package/dist/assets/xto-data-MxZsiJgi.css +0 -1
  80. package/dist/assets/xto-data-ogck6x_i.js +0 -1
  81. package/dist/assets/xto-feedback-Bxx38c3P.css +0 -1
  82. package/dist/assets/xto-feedback-C0-6cAL6.js +0 -1
  83. package/dist/assets/xto-form-Cu6q3VLG.css +0 -1
  84. package/dist/assets/xto-form-IDg_78Vf.js +0 -1
  85. package/dist/assets/xto-layout-BDD6sSlM.css +0 -1
  86. package/dist/assets/xto-navigation-CPYLzfu7.js +0 -1
  87. package/dist/assets/xto-navigation-XfpyMpEo.css +0 -1
  88. package/dist/index.html +0 -28
package/dist/main.d.ts ADDED
File without changes
@@ -0,0 +1,30 @@
1
+ import { RouteRecordRaw } from 'vue-router';
2
+ export declare const layoutRoute: RouteRecordRaw;
3
+ export declare const defaultDynamicRoutes: RouteRecordRaw[];
4
+ export declare const mockMenuData: ({
5
+ menuCode: string;
6
+ menuName: string;
7
+ menuUrl: string;
8
+ icon: string;
9
+ closable: boolean;
10
+ isDefault: boolean;
11
+ isOut: boolean;
12
+ children?: undefined;
13
+ } | {
14
+ menuCode: string;
15
+ menuName: string;
16
+ menuUrl: string;
17
+ icon: string;
18
+ closable: boolean;
19
+ isDefault: boolean;
20
+ isOut: boolean;
21
+ children: {
22
+ menuCode: string;
23
+ menuName: string;
24
+ menuUrl: string;
25
+ icon: string;
26
+ closable: boolean;
27
+ isDefault: boolean;
28
+ isOut: boolean;
29
+ }[];
30
+ })[];
@@ -0,0 +1,17 @@
1
+ import { Router } from 'vue-router';
2
+ interface RouterGuardOptions {
3
+ whiteList?: string[];
4
+ loginPath?: string;
5
+ homePath?: string;
6
+ appId?: string;
7
+ fetchUserInfo?: () => Promise<any>;
8
+ fetchMenu?: () => Promise<any>;
9
+ onLoginSuccess?: () => void;
10
+ }
11
+ /**
12
+ * 设置路由守卫
13
+ * @param router 路由实例
14
+ * @param options 配置选项
15
+ */
16
+ export declare function setupRouterGuards(router: Router, options?: RouterGuardOptions): void;
17
+ export {};
@@ -0,0 +1,6 @@
1
+ /**
2
+ * 路由配置
3
+ */
4
+ declare const router: import('vue-router').Router;
5
+ export declare function resetRouter(): void;
6
+ export default router;
@@ -0,0 +1,22 @@
1
+ import { RouteRecordRaw, Router } from 'vue-router';
2
+ interface LayoutRouteOptions {
3
+ indexPath?: string;
4
+ }
5
+ interface CreateRouterOptions {
6
+ base?: string;
7
+ }
8
+ /**
9
+ * 创建布局路由
10
+ * @param children 子路由配置
11
+ * @param options 配置选项
12
+ * @returns 布局路由配置
13
+ */
14
+ export declare function createLayoutRoute(children: RouteRecordRaw[], options?: LayoutRouteOptions): RouteRecordRaw;
15
+ /**
16
+ * 创建路由实例
17
+ * @param routes 路由配置数组
18
+ * @param options 配置选项
19
+ * @returns 路由实例
20
+ */
21
+ export declare function createRouter(routes: RouteRecordRaw[], options?: CreateRouterOptions): Router;
22
+ export {};
@@ -0,0 +1,2 @@
1
+ import { RouteRecordRaw } from 'vue-router';
2
+ export declare const staticRoutes: RouteRecordRaw[];
@@ -0,0 +1,93 @@
1
+ /**
2
+ * 应用状态
3
+ */
4
+ export type ThemeMode = 'light' | 'dark';
5
+ export type LayoutMode = 'sidebar' | 'top' | 'mix';
6
+ export declare const useAppStore: import('pinia').StoreDefinition<"app", Pick<{
7
+ appName: import('vue').Ref<string, string>;
8
+ indexPath: import('vue').Ref<string, string>;
9
+ isDark: import('vue').Ref<boolean, boolean>;
10
+ theme: import('vue').Ref<ThemeMode, ThemeMode>;
11
+ layout: import('vue').Ref<LayoutMode, LayoutMode>;
12
+ isCollapsed: import('vue').Ref<boolean, boolean>;
13
+ showTabs: import('vue').Ref<boolean, boolean>;
14
+ showFooter: import('vue').Ref<boolean, boolean>;
15
+ showBreadcrumb: import('vue').Ref<boolean, boolean>;
16
+ primaryColor: import('vue').Ref<string, string>;
17
+ cachedViews: import('vue').Ref<string[], string[]>;
18
+ mixSubMenus: import('vue').Ref<any[], any[]>;
19
+ themeClass: import('vue').ComputedRef<"light" | "dark">;
20
+ setAppName: (name: string) => void;
21
+ setIndexPath: (path: string) => void;
22
+ toggleTheme: () => void;
23
+ toggleCollapse: () => void;
24
+ setTheme: (mode: ThemeMode) => void;
25
+ setLayout: (mode: LayoutMode) => void;
26
+ toggleTabs: () => void;
27
+ toggleFooter: () => void;
28
+ toggleBreadcrumb: () => void;
29
+ setPrimaryColor: (color: string) => void;
30
+ addCachedView: (name: string) => void;
31
+ removeCachedView: (name: string) => void;
32
+ clearCachedViews: () => void;
33
+ setMixSubMenus: (menus: any[]) => void;
34
+ initTheme: () => void;
35
+ }, "appName" | "indexPath" | "isDark" | "theme" | "layout" | "isCollapsed" | "showTabs" | "showFooter" | "showBreadcrumb" | "primaryColor" | "cachedViews" | "mixSubMenus">, Pick<{
36
+ appName: import('vue').Ref<string, string>;
37
+ indexPath: import('vue').Ref<string, string>;
38
+ isDark: import('vue').Ref<boolean, boolean>;
39
+ theme: import('vue').Ref<ThemeMode, ThemeMode>;
40
+ layout: import('vue').Ref<LayoutMode, LayoutMode>;
41
+ isCollapsed: import('vue').Ref<boolean, boolean>;
42
+ showTabs: import('vue').Ref<boolean, boolean>;
43
+ showFooter: import('vue').Ref<boolean, boolean>;
44
+ showBreadcrumb: import('vue').Ref<boolean, boolean>;
45
+ primaryColor: import('vue').Ref<string, string>;
46
+ cachedViews: import('vue').Ref<string[], string[]>;
47
+ mixSubMenus: import('vue').Ref<any[], any[]>;
48
+ themeClass: import('vue').ComputedRef<"light" | "dark">;
49
+ setAppName: (name: string) => void;
50
+ setIndexPath: (path: string) => void;
51
+ toggleTheme: () => void;
52
+ toggleCollapse: () => void;
53
+ setTheme: (mode: ThemeMode) => void;
54
+ setLayout: (mode: LayoutMode) => void;
55
+ toggleTabs: () => void;
56
+ toggleFooter: () => void;
57
+ toggleBreadcrumb: () => void;
58
+ setPrimaryColor: (color: string) => void;
59
+ addCachedView: (name: string) => void;
60
+ removeCachedView: (name: string) => void;
61
+ clearCachedViews: () => void;
62
+ setMixSubMenus: (menus: any[]) => void;
63
+ initTheme: () => void;
64
+ }, "themeClass">, Pick<{
65
+ appName: import('vue').Ref<string, string>;
66
+ indexPath: import('vue').Ref<string, string>;
67
+ isDark: import('vue').Ref<boolean, boolean>;
68
+ theme: import('vue').Ref<ThemeMode, ThemeMode>;
69
+ layout: import('vue').Ref<LayoutMode, LayoutMode>;
70
+ isCollapsed: import('vue').Ref<boolean, boolean>;
71
+ showTabs: import('vue').Ref<boolean, boolean>;
72
+ showFooter: import('vue').Ref<boolean, boolean>;
73
+ showBreadcrumb: import('vue').Ref<boolean, boolean>;
74
+ primaryColor: import('vue').Ref<string, string>;
75
+ cachedViews: import('vue').Ref<string[], string[]>;
76
+ mixSubMenus: import('vue').Ref<any[], any[]>;
77
+ themeClass: import('vue').ComputedRef<"light" | "dark">;
78
+ setAppName: (name: string) => void;
79
+ setIndexPath: (path: string) => void;
80
+ toggleTheme: () => void;
81
+ toggleCollapse: () => void;
82
+ setTheme: (mode: ThemeMode) => void;
83
+ setLayout: (mode: LayoutMode) => void;
84
+ toggleTabs: () => void;
85
+ toggleFooter: () => void;
86
+ toggleBreadcrumb: () => void;
87
+ setPrimaryColor: (color: string) => void;
88
+ addCachedView: (name: string) => void;
89
+ removeCachedView: (name: string) => void;
90
+ clearCachedViews: () => void;
91
+ setMixSubMenus: (menus: any[]) => void;
92
+ initTheme: () => void;
93
+ }, "setAppName" | "setIndexPath" | "toggleTheme" | "toggleCollapse" | "setTheme" | "setLayout" | "toggleTabs" | "toggleFooter" | "toggleBreadcrumb" | "setPrimaryColor" | "addCachedView" | "removeCachedView" | "clearCachedViews" | "setMixSubMenus" | "initTheme">>;
@@ -0,0 +1,41 @@
1
+ import { TokenInfo } from '../utils/auth';
2
+ export declare const useAuthStore: import('pinia').StoreDefinition<"auth", Pick<{
3
+ token: import('vue').Ref<string | null, string | null>;
4
+ isLoggedIn: import('vue').ComputedRef<boolean>;
5
+ baseUrl: import('vue').Ref<string, string>;
6
+ appId: import('vue').Ref<string, string>;
7
+ clientId: import('vue').Ref<string, string>;
8
+ loginPath: import('vue').Ref<string, string>;
9
+ login: (tokenInfo: TokenInfo) => void;
10
+ logout: () => void;
11
+ setBaseUrl: (url: string) => void;
12
+ setAppId: (id: string) => void;
13
+ setClientId: (id: string) => void;
14
+ setLoginPath: (path: string) => void;
15
+ }, "appId" | "token" | "baseUrl" | "clientId" | "loginPath">, Pick<{
16
+ token: import('vue').Ref<string | null, string | null>;
17
+ isLoggedIn: import('vue').ComputedRef<boolean>;
18
+ baseUrl: import('vue').Ref<string, string>;
19
+ appId: import('vue').Ref<string, string>;
20
+ clientId: import('vue').Ref<string, string>;
21
+ loginPath: import('vue').Ref<string, string>;
22
+ login: (tokenInfo: TokenInfo) => void;
23
+ logout: () => void;
24
+ setBaseUrl: (url: string) => void;
25
+ setAppId: (id: string) => void;
26
+ setClientId: (id: string) => void;
27
+ setLoginPath: (path: string) => void;
28
+ }, "isLoggedIn">, Pick<{
29
+ token: import('vue').Ref<string | null, string | null>;
30
+ isLoggedIn: import('vue').ComputedRef<boolean>;
31
+ baseUrl: import('vue').Ref<string, string>;
32
+ appId: import('vue').Ref<string, string>;
33
+ clientId: import('vue').Ref<string, string>;
34
+ loginPath: import('vue').Ref<string, string>;
35
+ login: (tokenInfo: TokenInfo) => void;
36
+ logout: () => void;
37
+ setBaseUrl: (url: string) => void;
38
+ setAppId: (id: string) => void;
39
+ setClientId: (id: string) => void;
40
+ setLoginPath: (path: string) => void;
41
+ }, "login" | "logout" | "setBaseUrl" | "setAppId" | "setClientId" | "setLoginPath">>;
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Pinia Store 入口
3
+ */
4
+ declare const pinia: import('pinia').Pinia;
5
+ export default pinia;
6
+ export * from './user';
7
+ export * from './auth';
8
+ export * from './menu';
9
+ export * from './app';
10
+ export * from './locale';
@@ -0,0 +1,42 @@
1
+ import { LocaleCode, LocaleMessages } from '@xto/core/locale';
2
+ export type { LocaleCode, LocaleMessages };
3
+ export declare const useLocaleStore: import('pinia').StoreDefinition<"locale", Pick<{
4
+ locale: import('vue').Ref<LocaleCode, LocaleCode>;
5
+ localeName: import('vue').ComputedRef<string>;
6
+ locales: {
7
+ code: LocaleCode;
8
+ name: string;
9
+ }[];
10
+ messages: import('vue').ComputedRef<LocaleMessages>;
11
+ t: (key: string, ...args: (string | number)[]) => string;
12
+ changeLocale: (code: LocaleCode) => void;
13
+ addMessages: (msgs: LocaleMessages) => void;
14
+ initLocale: () => void;
15
+ provider: any;
16
+ }, "locale" | "locales" | "provider">, Pick<{
17
+ locale: import('vue').Ref<LocaleCode, LocaleCode>;
18
+ localeName: import('vue').ComputedRef<string>;
19
+ locales: {
20
+ code: LocaleCode;
21
+ name: string;
22
+ }[];
23
+ messages: import('vue').ComputedRef<LocaleMessages>;
24
+ t: (key: string, ...args: (string | number)[]) => string;
25
+ changeLocale: (code: LocaleCode) => void;
26
+ addMessages: (msgs: LocaleMessages) => void;
27
+ initLocale: () => void;
28
+ provider: any;
29
+ }, "messages" | "localeName" | "provider">, Pick<{
30
+ locale: import('vue').Ref<LocaleCode, LocaleCode>;
31
+ localeName: import('vue').ComputedRef<string>;
32
+ locales: {
33
+ code: LocaleCode;
34
+ name: string;
35
+ }[];
36
+ messages: import('vue').ComputedRef<LocaleMessages>;
37
+ t: (key: string, ...args: (string | number)[]) => string;
38
+ changeLocale: (code: LocaleCode) => void;
39
+ addMessages: (msgs: LocaleMessages) => void;
40
+ initLocale: () => void;
41
+ provider: any;
42
+ }, "t" | "changeLocale" | "addMessages" | "initLocale" | "provider">>;
@@ -0,0 +1,83 @@
1
+ import { MenuItem } from '../types/api';
2
+ export declare const useMenuStore: import('pinia').StoreDefinition<"menu", Pick<{
3
+ menuList: import('vue').Ref<{
4
+ menuCode: string;
5
+ menuName: string;
6
+ menuUrl: string;
7
+ icon?: string | undefined;
8
+ closable?: boolean | undefined;
9
+ isDefault?: boolean | undefined;
10
+ isOut?: boolean | undefined;
11
+ type?: number | undefined;
12
+ children?: /*elided*/ any[] | undefined;
13
+ }[], MenuItem[] | {
14
+ menuCode: string;
15
+ menuName: string;
16
+ menuUrl: string;
17
+ icon?: string | undefined;
18
+ closable?: boolean | undefined;
19
+ isDefault?: boolean | undefined;
20
+ isOut?: boolean | undefined;
21
+ type?: number | undefined;
22
+ children?: /*elided*/ any[] | undefined;
23
+ }[]>;
24
+ permissions: import('vue').Ref<string[], string[]>;
25
+ hasMenu: import('vue').ComputedRef<boolean>;
26
+ setMenuList: (menus: MenuItem[]) => void;
27
+ clearMenu: () => void;
28
+ hasPermission: (permission: string | string[]) => boolean;
29
+ }, "menuList" | "permissions">, Pick<{
30
+ menuList: import('vue').Ref<{
31
+ menuCode: string;
32
+ menuName: string;
33
+ menuUrl: string;
34
+ icon?: string | undefined;
35
+ closable?: boolean | undefined;
36
+ isDefault?: boolean | undefined;
37
+ isOut?: boolean | undefined;
38
+ type?: number | undefined;
39
+ children?: /*elided*/ any[] | undefined;
40
+ }[], MenuItem[] | {
41
+ menuCode: string;
42
+ menuName: string;
43
+ menuUrl: string;
44
+ icon?: string | undefined;
45
+ closable?: boolean | undefined;
46
+ isDefault?: boolean | undefined;
47
+ isOut?: boolean | undefined;
48
+ type?: number | undefined;
49
+ children?: /*elided*/ any[] | undefined;
50
+ }[]>;
51
+ permissions: import('vue').Ref<string[], string[]>;
52
+ hasMenu: import('vue').ComputedRef<boolean>;
53
+ setMenuList: (menus: MenuItem[]) => void;
54
+ clearMenu: () => void;
55
+ hasPermission: (permission: string | string[]) => boolean;
56
+ }, "hasMenu">, Pick<{
57
+ menuList: import('vue').Ref<{
58
+ menuCode: string;
59
+ menuName: string;
60
+ menuUrl: string;
61
+ icon?: string | undefined;
62
+ closable?: boolean | undefined;
63
+ isDefault?: boolean | undefined;
64
+ isOut?: boolean | undefined;
65
+ type?: number | undefined;
66
+ children?: /*elided*/ any[] | undefined;
67
+ }[], MenuItem[] | {
68
+ menuCode: string;
69
+ menuName: string;
70
+ menuUrl: string;
71
+ icon?: string | undefined;
72
+ closable?: boolean | undefined;
73
+ isDefault?: boolean | undefined;
74
+ isOut?: boolean | undefined;
75
+ type?: number | undefined;
76
+ children?: /*elided*/ any[] | undefined;
77
+ }[]>;
78
+ permissions: import('vue').Ref<string[], string[]>;
79
+ hasMenu: import('vue').ComputedRef<boolean>;
80
+ setMenuList: (menus: MenuItem[]) => void;
81
+ clearMenu: () => void;
82
+ hasPermission: (permission: string | string[]) => boolean;
83
+ }, "setMenuList" | "clearMenu" | "hasPermission">>;
@@ -0,0 +1,92 @@
1
+ import { UserInfo } from '../types/api';
2
+ export declare const useUserStore: import('pinia').StoreDefinition<"user", Pick<{
3
+ userInfo: import('vue').Ref<{
4
+ appId: string;
5
+ userId: string;
6
+ userName: string;
7
+ departmentName?: string | undefined;
8
+ email?: string | undefined;
9
+ mobilePhone?: string | undefined;
10
+ positionName?: string | undefined;
11
+ avatar?: string | undefined;
12
+ } | null, UserInfo | {
13
+ appId: string;
14
+ userId: string;
15
+ userName: string;
16
+ departmentName?: string | undefined;
17
+ email?: string | undefined;
18
+ mobilePhone?: string | undefined;
19
+ positionName?: string | undefined;
20
+ avatar?: string | undefined;
21
+ } | null>;
22
+ isLoggedIn: import('vue').ComputedRef<boolean>;
23
+ userId: import('vue').ComputedRef<string>;
24
+ userName: import('vue').ComputedRef<string>;
25
+ departmentName: import('vue').ComputedRef<string>;
26
+ email: import('vue').ComputedRef<string>;
27
+ mobilePhone: import('vue').ComputedRef<string>;
28
+ positionName: import('vue').ComputedRef<string>;
29
+ avatar: import('vue').ComputedRef<string>;
30
+ setUserInfo: (info: UserInfo) => void;
31
+ clearUserInfo: () => void;
32
+ }, "userInfo">, Pick<{
33
+ userInfo: import('vue').Ref<{
34
+ appId: string;
35
+ userId: string;
36
+ userName: string;
37
+ departmentName?: string | undefined;
38
+ email?: string | undefined;
39
+ mobilePhone?: string | undefined;
40
+ positionName?: string | undefined;
41
+ avatar?: string | undefined;
42
+ } | null, UserInfo | {
43
+ appId: string;
44
+ userId: string;
45
+ userName: string;
46
+ departmentName?: string | undefined;
47
+ email?: string | undefined;
48
+ mobilePhone?: string | undefined;
49
+ positionName?: string | undefined;
50
+ avatar?: string | undefined;
51
+ } | null>;
52
+ isLoggedIn: import('vue').ComputedRef<boolean>;
53
+ userId: import('vue').ComputedRef<string>;
54
+ userName: import('vue').ComputedRef<string>;
55
+ departmentName: import('vue').ComputedRef<string>;
56
+ email: import('vue').ComputedRef<string>;
57
+ mobilePhone: import('vue').ComputedRef<string>;
58
+ positionName: import('vue').ComputedRef<string>;
59
+ avatar: import('vue').ComputedRef<string>;
60
+ setUserInfo: (info: UserInfo) => void;
61
+ clearUserInfo: () => void;
62
+ }, "userId" | "userName" | "departmentName" | "email" | "mobilePhone" | "positionName" | "avatar" | "isLoggedIn">, Pick<{
63
+ userInfo: import('vue').Ref<{
64
+ appId: string;
65
+ userId: string;
66
+ userName: string;
67
+ departmentName?: string | undefined;
68
+ email?: string | undefined;
69
+ mobilePhone?: string | undefined;
70
+ positionName?: string | undefined;
71
+ avatar?: string | undefined;
72
+ } | null, UserInfo | {
73
+ appId: string;
74
+ userId: string;
75
+ userName: string;
76
+ departmentName?: string | undefined;
77
+ email?: string | undefined;
78
+ mobilePhone?: string | undefined;
79
+ positionName?: string | undefined;
80
+ avatar?: string | undefined;
81
+ } | null>;
82
+ isLoggedIn: import('vue').ComputedRef<boolean>;
83
+ userId: import('vue').ComputedRef<string>;
84
+ userName: import('vue').ComputedRef<string>;
85
+ departmentName: import('vue').ComputedRef<string>;
86
+ email: import('vue').ComputedRef<string>;
87
+ mobilePhone: import('vue').ComputedRef<string>;
88
+ positionName: import('vue').ComputedRef<string>;
89
+ avatar: import('vue').ComputedRef<string>;
90
+ setUserInfo: (info: UserInfo) => void;
91
+ clearUserInfo: () => void;
92
+ }, "setUserInfo" | "clearUserInfo">>;