import { CoachDetail } from 'app/models/candidate-dashboard-response/coach-detail';
import { ScheduleCandidateDetails } from 'app/models/candidate-dashboard-response/schedule-candidate-details';
import { InfoDetails } from 'app/models/candidate-dashboard-response/info-details';
export interface EmployeeCourseAssessmentPayload {
  assessment: boolean;
  courseId: number;
  userInfoMstrId: number;
}

export interface EmployeeCourseAssessmentResponse {
  employeeEventDetails: EmployeeEventDetail[];
  coachDetails: CoachDetail[];
  scheduleCandidateDetails: ScheduleCandidateDetails;
  infoDetails: InfoDetails;
  coachId: number;
  coachName: string;
  coachEmailId: string;
  coachSkillMasterName: string;
  coachJobId: string;
  employeeCourseDetails: EmployeeCourseDetails;
  infoMstr: InfoMstr;
  fullName: string;
  governementId?: any;
  jobId?: any;
  adId: string;
  error?: any;
}


export interface EmployeeMiniAssessmentResponse {
  employeeEventDetails: EmployeeEventDetail[];
  coachDetails: coachDetails[];
  scheduleCandidateDetails: ScheduleCandidateDetails;
  infoDetails: InfoDetails;
  coachId: number;
  coachName: string;
  coachEmailId: string;
  coachSkillMasterName: string;
  coachJobId: string;
  assessmentDetails: any;
  infoMstr: InfoMstr;
  fullName: string;
  governementId?: any;
  jobId?: any;
  adId: string;
  error?: any;
}

export interface InfoMstr {
  userInfoMstrId: number;
  firstNm: string;
  lastNm: string;
  fullName: string;
  emailId: string;
  pgRoleUser: PgRoleUser[];
  pgEmployeeProjectDtls: any[];
  pgCourseEmployeeMapping: PgCourseEmployeeMapping[];
  pgUserSkillMapping: PgUserSkillMapping[];
  pgLocation: PgLocation;
  mobileNo?: any;
  createdBy: string;
  createdDt: number;
  updatedBy: string;
  updatedDt: number;
  socialUserType: string;
  status?: any;
}

export interface PgLocation {
  locationId: number;
  status: string;
  address: string;
  city: string;
  state: string;
  zipCode: number;
  country: string;
  createdBy: string;
  updatedBy: string;
  createdDt: number;
  updatedDt: number;
}

export interface PgUserSkillMapping {
  userSkillMappingId: number;
  userInfoMstrId: number;
  pgSkillTrackDtls: PgSkillTrackDtls;
  createdBy: string;
  createdDt: number;
  updatedBy: string;
  updatedDt: number;
  status: string;
}

export interface PgSkillTrackDtls {
  skillTrackDtlsId: number;
  pgSkillTrackMstr: PgSkillTrackMstr;
  pgSkillCategory: PgSkillCategory;
  skillTrackDtlsName: string;
  status: string;
  description: string;
  createdBy: string;
  createdDt: number;
  updatedBy: string;
  updatedDt: number;
}

export interface PgSkillCategory {
  skillCategoryId: number;
  skillCategoryName: string;
  description: string;
  status: string;
  createdBy: string;
  createdDt: number;
  updatedBy: string;
  updatedDt: number;
}

export interface PgSkillTrackMstr {
  skillTrackMstrId: number;
  skillTrackName: string;
  description: string;
  status: string;
  createdBy: string;
  createdDt: number;
  updatedBy: string;
  updatedDt: number;
}

export interface PgCourseEmployeeMapping {
  courseEmployeemappingId: number;
  userInfoMstrId: number;
  courseId: number;
  courseStatus: string;
  createdBy: string;
  createdDt: number;
  updatedBy: string;
  updatedDt: number;
  isGroupCourse?: any;
}

export interface PgRoleUser {
  roleUserId: number;
  pgRolePrivilege: PgRolePrivilege;
  userInfoMstrId: number;
  status: string;
  createdBy: string;
  createdDt: number;
  updatedBy: string;
  updatedDt: number;
}

export interface PgRolePrivilege {
  rolePrivilegeId: number;
  pgRoleMstr: PgRoleMstr;
  pgPrivilegeMstr: PgPrivilegeMstr;
  accessType: string;
  createdBy: string;
  createdDt: number;
  updatedBy: string;
  updatedDt: number;
}

export interface PgPrivilegeMstr {
  privilegeId: number;
  contentAccess: string;
  description: string;
  createdBy: string;
  createdDt: number;
  updatedBy: string;
  updatedDt: number;
}

export interface PgRoleMstr {
  roleId: number;
  roleName: string;
  status: string;
  createdBy: string;
  createdDt: number;
  updatedBy: string;
  updatedDt: number;
}

export interface EmployeeCourseDetails {
  courseId: number;
  courseStatus: string;
  assessmentId?: any;
}

export interface EmployeeEventDetail {
  eventDtlsId: number;
  eventName: string;
  eventScore?: any;
  eventInput?: any;
  coachId: number;
  eventDtlsDesc: any[];
  eventSts: string;
}
export interface coachDetails {
  adId: any;
  fullName: any;
  jodId: any;
}
