export type LoginType = 'admin' | 'teacher' | 'student' export interface IUser { id?: number createBy: number createTime: Date updateBy: string updateTime: string remark: string userId: number deptId: number collegeName: string schoolName: string employeeId: string schoolId: number collegeId: number userName: string nickName: string email: string phonenumber: string sex: string avatar: string | null password: string status: string delFlag: string loginIp: string loginDate: Date dept: IUserDept roles: IUserRole[] roleIds: null postIds: null roleId: null loginType: LoginType admin: boolean } export interface IUserDept { createBy: null createTime: null updateBy: null updateTime: null remark: null deptId: number parentId: number ancestors: string deptName: string orderNum: number leader: string phone: null email: null status: string delFlag: null parentName: null children?: [] } export interface IUserRole { createBy: null createTime: null updateBy: null updateTime: null remark: null roleId: number roleName: string roleKey: string roleSort: number dataScope: string menuCheckStrictly: boolean deptCheckStrictly: boolean status: string delFlag: null flag: boolean menuIds: null deptIds: null permissions: null admin: boolean }