export type User = { _id: string; name?: string; fullName?: string; key: number; }; /** * User data in localStorage */ export interface UserLogin { _id: string; company: string; companyName: string; companyCode?: string; firstName?: string; lastName?: string; fullName?: string; profilePictureMedium?: string; profilePictureBig?: string; profilePictureSmall?: string; email: string; phoneNumber?: string; employeeId?: string; position?: string; token: string; transactionRoles?: TransactionRoles; systemRoles?: SystemRoles; generalSetting?: GeneralSetting; addOn?: AddOn; } interface AddOn { maintenance?: boolean; tracking?: boolean; audit?: boolean; repairTicketing?: boolean; } interface GeneralSetting { currency?: Currency; timezone?: string; dateFormat?: DateFormat; timeFormat?: boolean; } interface DateFormat { locale: string; year: string; month: string; day: string; weekday: string; } interface Currency { currency?: string; symbol?: string; locale?: string; label?: string; _id?: string; id?: string; } interface SystemRoles { importData?: SystemRoleItem; assetAttribute?: SystemRoleItem; assetPolicies?: SystemRoleItem; depreciationGroup?: SystemRoleItem; depreciationMethod?: SystemRoleItem; documentDeletion?: SystemRoleItem; group?: SystemRoleItem; user?: SystemRoleItem; iotReader?: SystemRoleItem; license?: SystemRoleItem; purchaseDocument?: SystemRoleItem; purchaseInformation?: SystemRoleItem; role?: SystemRoleItem; tag?: SystemRoleItem; registerAsset?: SystemRoleItem; } interface SystemRoleItem { create?: boolean; view?: boolean; update?: boolean; delete?: boolean; } interface TransactionRoles { trackingRole?: TransactionRoleItem; disposalRole?: TransactionRoleItem; borrowingRole?: TransactionRoleItem; transferRole?: TransactionRoleItem; auditRole?: TransactionRoleItem; repairRole?: TransactionRoleItem; maintenanceRole?: TransactionRoleItem; } interface TransactionRoleItem { manager?: boolean; monitoringReport?: boolean; staff?: boolean; } export {};