/* eslint-disable */ /* prettier-ignore */ // Generated by elegant-router // Read more: https://github.com/soybeanjs/elegant-router declare module "@elegant-router/types" { type ElegantConstRoute = import('@elegant-router/vue').ElegantConstRoute; /** * route layout */ export type RouteLayout = "base" | "blank"; /** * route map */ export type RouteMap = { "root": "/"; "not-found": "/:pathMatch(.*)*"; "exception": "/exception"; "exception_403": "/exception/403"; "exception_404": "/exception/404"; "exception_500": "/exception/500"; "403": "/403"; "404": "/404"; "500": "/500"; "function": "/function"; "function_hide-child": "/function/hide-child"; "function_hide-child_one": "/function/hide-child/one"; "function_hide-child_three": "/function/hide-child/three"; "function_hide-child_two": "/function/hide-child/two"; "function_multi-tab": "/function/multi-tab"; "function_request": "/function/request"; "function_super-page": "/function/super-page"; "function_tab": "/function/tab"; "function_toggle-auth": "/function/toggle-auth"; "iframe-page": "/iframe-page/:url"; "infra": "/infra"; "infra_rd-code": "/infra/rd-code"; "infra_state-machine": "/infra/state-machine"; "login": "/login/:module(pwd-login|reset-pwd)?"; "metrics": "/metrics"; "metrics_member-efficiency": "/metrics/member-efficiency"; "metrics_project-progress": "/metrics/project-progress"; "metrics_worktime": "/metrics/worktime"; "personal-center": "/personal-center"; "personal-center_my-application": "/personal-center/my-application"; "personal-center_my-item": "/personal-center/my-item"; "personal-center_my-monthly": "/personal-center/my-monthly"; "personal-center_my-performance": "/personal-center/my-performance"; "personal-center_my-profile": "/personal-center/my-profile"; "personal-center_my-weekly": "/personal-center/my-weekly"; "personal-center_pending-approval": "/personal-center/pending-approval"; "plugin": "/plugin"; "plugin_barcode": "/plugin/barcode"; "plugin_charts": "/plugin/charts"; "plugin_charts_antv": "/plugin/charts/antv"; "plugin_charts_echarts": "/plugin/charts/echarts"; "plugin_charts_vchart": "/plugin/charts/vchart"; "plugin_copy": "/plugin/copy"; "plugin_excel": "/plugin/excel"; "plugin_gantt": "/plugin/gantt"; "plugin_gantt_dhtmlx": "/plugin/gantt/dhtmlx"; "plugin_gantt_vtable": "/plugin/gantt/vtable"; "plugin_icon": "/plugin/icon"; "plugin_map": "/plugin/map"; "plugin_pdf": "/plugin/pdf"; "plugin_pinyin": "/plugin/pinyin"; "plugin_print": "/plugin/print"; "plugin_swiper": "/plugin/swiper"; "plugin_tables": "/plugin/tables"; "plugin_tables_vtable": "/plugin/tables/vtable"; "plugin_typeit": "/plugin/typeit"; "plugin_video": "/plugin/video"; "product": "/product"; "product_dashboard": "/product/dashboard"; "product_list": "/product/list"; "product_requirement": "/product/requirement"; "product_setting": "/product/setting"; "project": "/project"; "project_list": "/project/list"; "project_project": "/project/project"; "project_project_execution": "/project/project/execution"; "project_project_overview": "/project/project/overview"; "project_project_requirement": "/project/project/requirement"; "project_project_setting": "/project/project/setting"; "system": "/system"; "system_dict": "/system/dict"; "system_menu": "/system/menu"; "system_post": "/system/post"; "system_role": "/system/role"; "system_user": "/system/user"; "system_user-detail": "/system/user-detail/:id"; "system_user-management-relation": "/system/user-management-relation"; "ticket": "/ticket"; "ticket_my-pending": "/ticket/my-pending"; "ticket_my-submitted": "/ticket/my-submitted"; "workbench": "/workbench"; }; /** * route key */ export type RouteKey = keyof RouteMap; /** * route path */ export type RoutePath = RouteMap[RouteKey]; /** * custom route key */ export type CustomRouteKey = Extract< RouteKey, | "root" | "not-found" | "exception" | "exception_403" | "exception_404" | "exception_500" >; /** * the generated route key */ export type GeneratedRouteKey = Exclude; /** * the first level route key, which contain the layout of the route */ export type FirstLevelRouteKey = Extract< RouteKey, | "403" | "404" | "500" | "function" | "iframe-page" | "infra" | "login" | "metrics" | "personal-center" | "plugin" | "product" | "project" | "system" | "ticket" | "workbench" >; /** * the custom first level route key */ export type CustomFirstLevelRouteKey = Extract< CustomRouteKey, | "root" | "not-found" | "exception" >; /** * the last level route key, which has the page file */ export type LastLevelRouteKey = Extract< RouteKey, | "403" | "404" | "500" | "iframe-page" | "login" | "function_hide-child_one" | "function_hide-child_three" | "function_hide-child_two" | "function_multi-tab" | "function_request" | "function_super-page" | "function_tab" | "function_toggle-auth" | "infra_rd-code" | "infra_state-machine" | "metrics_member-efficiency" | "metrics_project-progress" | "metrics_worktime" | "personal-center_my-application" | "personal-center_my-item" | "personal-center_my-monthly" | "personal-center_my-performance" | "personal-center_my-profile" | "personal-center_my-weekly" | "personal-center_pending-approval" | "plugin_barcode" | "plugin_charts_antv" | "plugin_charts_echarts" | "plugin_charts_vchart" | "plugin_copy" | "plugin_excel" | "plugin_gantt_dhtmlx" | "plugin_gantt_vtable" | "plugin_icon" | "plugin_map" | "plugin_pdf" | "plugin_pinyin" | "plugin_print" | "plugin_swiper" | "plugin_tables_vtable" | "plugin_typeit" | "plugin_video" | "product_dashboard" | "product_list" | "product_requirement" | "product_setting" | "project_list" | "project_project_execution" | "project_project_overview" | "project_project_requirement" | "project_project_setting" | "system_dict" | "system_menu" | "system_post" | "system_role" | "system_user-detail" | "system_user-management-relation" | "system_user" | "ticket_my-pending" | "ticket_my-submitted" | "workbench" >; /** * the custom last level route key */ export type CustomLastLevelRouteKey = Extract< CustomRouteKey, | "root" | "not-found" | "exception_403" | "exception_404" | "exception_500" >; /** * the single level route key */ export type SingleLevelRouteKey = FirstLevelRouteKey & LastLevelRouteKey; /** * the custom single level route key */ export type CustomSingleLevelRouteKey = CustomFirstLevelRouteKey & CustomLastLevelRouteKey; /** * the first level route key, but not the single level */ export type FirstLevelRouteNotSingleKey = Exclude; /** * the custom first level route key, but not the single level */ export type CustomFirstLevelRouteNotSingleKey = Exclude; /** * the center level route key */ export type CenterLevelRouteKey = Exclude; /** * the custom center level route key */ export type CustomCenterLevelRouteKey = Exclude; /** * the center level route key */ type GetChildRouteKey = T extends `${K}_${infer R}` ? R extends `${string}_${string}` ? never : T : never; /** * the single level route */ type SingleLevelRoute = K extends string ? Omit & { name: K; path: RouteMap[K]; component: `layout.${RouteLayout}$view.${K}`; } : never; /** * the last level route */ type LastLevelRoute = K extends LastLevelRouteKey ? Omit & { name: K; path: RouteMap[K]; component: `view.${K}`; } : never; /** * the center level route */ type CenterLevelRoute = K extends CenterLevelRouteKey ? Omit & { name: K; path: RouteMap[K]; children: (CenterLevelRoute> | LastLevelRoute>)[]; } : never; /** * the multi level route */ type MultiLevelRoute = K extends string ? ElegantConstRoute & { name: K; path: RouteMap[K]; component: `layout.${RouteLayout}`; children: (CenterLevelRoute> | LastLevelRoute>)[]; } : never; /** * the custom first level route */ type CustomSingleLevelRoute = K extends string ? Omit & { name: K; path: RouteMap[K]; component?: `layout.${RouteLayout}$view.${LastLevelRouteKey}`; } : never; /** * the custom last level route */ type CustomLastLevelRoute = K extends CustomLastLevelRouteKey ? Omit & { name: K; path: RouteMap[K]; component?: `view.${LastLevelRouteKey}`; } : never; /** * the custom center level route */ type CustomCenterLevelRoute = K extends CustomCenterLevelRouteKey ? Omit & { name: K; path: RouteMap[K]; children: (CustomCenterLevelRoute> | CustomLastLevelRoute>)[]; } : never; /** * the custom multi level route */ type CustomMultiLevelRoute = K extends string ? ElegantConstRoute & { name: K; path: RouteMap[K]; component: `layout.${RouteLayout}`; children: (CustomCenterLevelRoute> | CustomLastLevelRoute>)[]; } : never; /** * the custom route */ type CustomRoute = CustomSingleLevelRoute | CustomMultiLevelRoute; /** * the generated route */ type GeneratedRoute = SingleLevelRoute | MultiLevelRoute; /** * the elegant route */ type ElegantRoute = GeneratedRoute | CustomRoute; }