export interface PlatformAdminRole { id: number; name: string; permissions: AdminUserPermissions[]; } export enum AdminUserPermissions { CreateOrEditClient = 1, ViewApplicants = 2, ViewGrantManagers = 3, ViewEmailLogs = 4, Import = 5, CreatePasswordResetToken = 6, ViewUsers = 7, EditGrantManagers = 8, EditApplicants = 9, CanImpersonate = 10, CanAccessAllClientZones = 11, ViewClient = 12, CanManageSpecialHandling = 13, CanManageAddressRequests = 14, CanManageApplicantSsoId = 15, ManageRoles = 16, CanManageStandardProductComponents = 17, ResourceConfiguration = 18, CanManageFeatureFlags = 20 } export interface AdminUser { userId: number; firstName: string; lastName: string; fullName?: string; isDeactivated: boolean; canAccessAllClientZones?: boolean; createdDate: string; updatedDate?: string; createdBy?: number; updatedBy?: number; email: string; roles: number[]; clientZoneIds?: number[]; } export interface AdaptedAdminUser { userId?: number; firstName?: string; lastName?: string; fullName?: string; email?: string; createdDate?: string; isDeactivated?: boolean; canAccessAllClientZones?: boolean; clientZoneIds?: number[]; roleIds: number[]; } export interface AdminUserReport { AdminLastName: string; AdminFirstName: string; AdminEmailAddress: string; AssignedClients: string[]; AssignedRoles: string[]; CreatedDate: string; UpdatedDate?: string; CreatedBy?: number; UpdatedBy?: number; } export interface PlatformUserSetPasswordPayload { token: string; password: string; confirmPassword: string; } export interface UsersImport { firstName: string; lastName: string; jobTitle: string; email: string; roleIds: number[]; workFlowLevelIds: number[]; isSSO: boolean; } export interface UsersValidationPayload { emails: string[]; workflowLevelIds: number[]; roleIds: number[]; } export interface BaseUserExport { 'Employee First Name': string; 'Employee Last Name': string; 'Employee Email': string; 'Is Employee Active': boolean; } export interface UserWorkflowExport extends BaseUserExport { 'Workflow': string; 'Workflow Level': string; 'Workflow Level Permission': string; } export interface UserRoleExport extends BaseUserExport { 'SSO': string; 'Role': string; 'Permissions': string; } export interface AdminFromSearch { firstName: string; lastName: string; email: string; location: string; } export interface UserSignature { userSignatureId: number; userId: number; userSignatureUrl: string; } export enum UserStatus { All = 1, Active = 2, Inactive = 3, }