/// /// type Platform = 'WEB' | 'DESKTOP' | 'ANDROID' interface ImportMetaEnv { readonly VITE_PLATFORM: Platform readonly VITE_API_URL: string readonly VITE_API_TOKEN_URL: string readonly VITE_TURNSTILE_SITE_KEY: string } interface ImportMeta { readonly env: ImportMetaEnv } interface RouteJsonObject { path: string absolutePath: string id?: string element?: React.JSX.Element component?: React.ComponentType name?: string titlePrefix?: string title?: string titlePostfix?: string icon?: IconComponent menu?: boolean auth?: boolean permission?: boolean operationCode?: string autoHide?: boolean children?: RouteJsonObject[] } interface RouteHandle { absolutePath: string name?: string titlePrefix?: string title?: string titlePostfix?: string icon?: IconComponent menu?: boolean auth?: boolean permission?: boolean autoHide?: boolean } interface _Response { code: number success: boolean msg: string data: T | null } interface Captcha { value: string base64Src: string } interface TokenVo { token: string } interface UserInfoUpdateParam { avatar?: string nickname?: string } interface RegisterParam { username: string email: string password: string captchaCode: string } interface VerifyParam { code: string nickname?: string avatar?: string } interface ForgetParam { email: string captchaCode: string } interface RetrieveParam { code: string password: string captchaCode: string } interface LoginParam { account: string password: string captchaCode: string twoFactorCode?: string } interface UserChangePasswordParam { originalPassword: string newPassword: string } interface TwoFactorValidateParam { code: string } interface TwoFactorRemoveParam { code: string } interface UserWithInfoVo { id: string username: string twoFactor: boolean verified: boolean locking: boolean expiration: string credentialsExpiration: string enable: boolean currentLoginTime: string currentLoginIp: string lastLoginTime: string lastLoginIp: string createTime: string updateTime: string userInfo: UserInfoVo } interface UserWithPowerInfoVo { id: string username: string twoFactor: boolean verified: boolean locking: boolean expiration: string credentialsExpiration: string enable: boolean currentLoginTime: string currentLoginIp: string lastLoginTime: string lastLoginIp: string createTime: string updateTime: string userInfo: UserInfoVo modules: ModuleVo[] menus: MenuVo[] funcs: FuncVo[] operations: OperationVo[] } interface UserWithRoleInfoVo { id: string username: string twoFactor: boolean verify: string locking: boolean expiration: string credentialsExpiration: string enable: boolean currentLoginTime: string currentLoginIp: string lastLoginTime: string lastLoginIp: string createTime: string updateTime: string userInfo: UserInfoVo roles: RoleVo[] groups: GroupVo[] } interface UserInfoVo { id: string userId: string nickname: string avatar: string email: string } interface TwoFactorVo { qrCodeSVGBase64: string } interface ModuleVo { id: number name: string } interface MenuVo { id: number name: string url: string parentId: number moduleId: number children: MenuVo[] } interface FuncVo { id: number name: string parentId: number menuId: number children: FuncVo[] } interface OperationVo { id: number name: string code: string funcId: number } interface RoleVo { id: string name: string enable: boolean createTime: string updateTime: string } interface GroupVo { id: string name: string enable: boolean createTime: string updateTime: string } interface PageVo { current: number pages: number size: number total: number records: T[] } interface PageParam { currentPage?: number pageSize?: number sortField?: string sortOrder?: string } interface TableParam { pagination?: _TablePaginationConfig sortField?: React.Key | readonly React.Key[] sortOrder?: _SortOrder filters?: Record } interface UserGetParam extends PageParam { searchType?: string searchValue?: string searchRegex?: boolean } interface UserAddEditParam { id?: string username: string password?: string verified: boolean locking?: boolean expiration?: string credentialsExpiration?: string enable?: boolean nickname?: string avatar?: string email?: string roleIds: number[] groupIds: number[] } interface UserUpdatePasswordParam { id: string password: string credentialsExpiration?: string } interface SysLogGetParam extends PageParam { searchRequestUrl?: string searchStartTime?: string searchEndTime?: string } interface SysLogGetVo { id: string logType: string operateUserId: string operateTime: string requestUri: string requestMethod: string requestParams: string requestIp: string requestServerAddress: string exception: boolean exceptionInfo: string startTime: string endTime: string executeTime: number userAgent: string operateUsername: string } interface RoleGetParam extends PageParam { searchName?: string searchRegex?: boolean } interface RoleWithPowerGetVo { id: string name: string enable: string createTime: string updateTime: string modules: ModuleVo[] menus: MenuVo[] funcs: FuncVo[] operations: OperationVo[] tree: _DataNode[] } interface RoleChangeStatusParam { id: string enable: boolean } interface RoleAddEditParam { id?: string name: string powerIds: number[] enable: boolean } interface PowerSetVo { moduleList: ModuleVo[] menuList: MenuVo[] funcList: FuncVo[] operationList: OperationVo[] } interface GroupGetParam extends PageParam { searchName?: string searchRegex?: boolean } interface GroupWithRoleGetVo { id: string name: string enable: boolean createTime: string updateTime: string roles: RoleVo[] } interface GroupAddEditParam { id?: string name: string roleIds: number[] enable: boolean } interface GroupChangeStatusParam { id: string enable: boolean } interface AvatarBase64Vo { base64: string } interface BaseSettingsVo { appName?: string appUrl?: string } interface BaseSettingsParam { appName: string appUrl: string } interface MailSettingsVo { host?: string port?: number securityType?: string username?: string password?: string from?: string fromName?: string } interface MailSettingsParam { host?: string port?: number securityType?: string username?: string password?: string from?: string fromName?: string } interface MailSendParam { to: string } interface SensitiveWordVo { id: string word: string useFor: string[] enable: boolean } interface SensitiveWordAddParam { word: string useFor?: string[] enable?: boolean } interface SensitiveWordUpdateParam { ids: string[] } interface TwoFactorSettingsVo { issuer: string secretKeyLength: number } interface TwoFactorSettingsParam { issuer: string secretKeyLength: number } interface SoftwareInfoVo { os: string bitness: number javaVersion: string javaVersionDate: string javaVendor: string javaRuntime: string javaRuntimeVersion: string jvm: string jvmVersion: string jvmInfo: string jvmVendor: string javaClassVersion: string osBootTime: string serverStartupTime: string } interface HardwareInfoVo { cpu: string arch: string is64Bit: boolean cpuPhysicalPackageCount: number cpuPhysicalProcessorCount: number cpuLogicalProcessorCount: number microarchitecture: string memories: string disks: string } interface CpuInfoVo { user: number nice: number system: number idle: number iowait: number irq: number softirq: number steal: number total: number processors: CpuInfoVo[] } interface StorageInfoVo { memoryTotal: number memoryFree: number virtualMemoryInUse: number virtualMemoryMax: number swapTotal: number swapUsed: number jvmTotal: number jvmFree: number fileStores: FileStoreInfoVo[] } interface FileStoreInfoVo { mount: string total: number free: number } interface OnlineInfoVo { current: number history: { time: string record: string }[] } interface OnlineInfoGetParam { scope: string } interface ActiveInfoVo { registerHistory: { time: string count: number }[] loginHistory: { time: string count: number }[] verifyHistory: { time: string count: number }[] } interface ActiveInfoGetParam { scope: string } interface ToolCategoryVo { id: string name: string enable: boolean createTime: string updateTime: string } interface ToolCategoryAddEditParam { id?: string name: string enable: string } interface ToolDataVo { id: string data?: string createTime?: string updateTime?: string } interface ToolBaseVo { id: string name: string source: ToolDataVo dist: ToolDataVo platform: Platform compiled: boolean createTime: string updateTime: string } interface ToolBaseAddEditParam { id?: string name?: string source?: string dist?: string platform?: Platform } interface ToolTemplateVo { id: string name: string baseId: string source: ToolDataVo platform: Platform entryPoint: string enable: boolean createTime: string updateTime: string base: ToolBaseVo } interface ToolTemplateAddEditParam { id?: string name?: string baseId?: string source?: string platform?: Platform entryPoint?: string enable?: boolean } interface ToolVo { id: string name: string toolId: string icon: string platform: Platform description: string base: ToolBaseVo author: UserWithInfoVo ver: string keywords: string[] categories: ToolCategoryVo[] source: ToolDataVo dist: ToolDataVo entryPoint: string publish: string review: 'NONE' | 'PROCESSING' | 'PASS' | 'REJECT' createTime: string updateTime: string favorite: boolean } interface ToolCreateParam { name: string toolId: string icon: string platform: Platform description: string ver: string templateId: string keywords: string[] categories: string[] } interface ToolUpgradeParam { toolId: string ver: string platform: Platform } interface ToolUpdateParam { id: string name?: string icon?: string description?: string keywords?: string[] categories?: string[] source?: string } interface ToolManagementGetParam extends PageParam { searchType?: string searchValue?: string searchRegex?: boolean } interface ToolManagementPassParam { dist: string } interface ToolStoreGetParam extends PageParam { searchValue?: string } interface ToolFavoriteAddRemoveParam { authorId: string toolId: string platform: Platform } interface ToolMenuItem { icon: string toolName: string toolId: string authorUsername: string ver: string }