interface EvaluateRes {
  citizenId: string;
  createdAt: Date;
  fullName: string;
  id: string;
  oc: string;
  posNo: string;
  position: string;
  step: string;
  step_th: string;
  type: string;
  type_th: string;
  updatedAt: Date;
}
interface PersonInformation {
  assessments: Assessment[];
  birthDate: string;
  certificates: Certificate[];
  educations: Education[];
  experience: null;
  fullName: string;
  govAge: string;
  isEducationalQft: boolean;
  isGovermantServiceHtr: boolean;
  isHaveMinPeriodOrHoldPos: boolean;
  isHaveProLicense: boolean;
  isHaveSpecificQft: boolean;
  isMinPeriodOfTenure: boolean;
  isOperatingExp: boolean;
  oc: string;
  posNo: string;
  position: string;
  positionLevel: string;
  prefix: string;
  salaries: Salary[];
  salary: string;
  trainings: Training[];
  type: string;
}

interface Assessment {
  date: string;
  point1Total: number;
  point1: number;
  point2Total: number;
  point2: number;
  pointSumTotal: number;
  pointSum: number;
}

interface Certificate {
  certificateType: string;
  issuer: string;
  certificateNo: string;
  issueDate: string;
  expireDate: string;
}

interface Education {
  educationLevel: string;
  institute: string;
  isDate: boolean;
  startDate: string;
  endDate: string;
  finishDate: string;
  isEducation: boolean;
  degree: string;
  field: string;
  fundName: string;
  gpa: string;
  country: string;
  other: string;
  duration: string;
  durationYear: number;
}

interface Salary {
  date: string;
  amount: number;
  positionSalaryAmount: null;
  mouthSalaryAmount: null;
  position: string;
  posNo: string;
  salaryClass: null;
  salaryRef: null;
  refCommandNo: null;
  refCommandDate: null;
  salaryStatus: null;
}

interface Training {
  name: string;
  topic: string;
  startDate: string;
  endDate: string;
  yearly: number;
  place: string;
  duration: string;
  department: string;
  numberOrder: string;
  dateOrder: string;
}

export type { EvaluateRes, PersonInformation };
