interface OpType {
  commandCode: string;
  id: string;
}

interface DataPerson {
  age: string;
  bloodGroup: string;
  bmaOfficer: string;
  certificates: [
    {
      certificateNo: string;
      certificateType: string;
      expireDate: string;
      id: string;
      issueDate: string;
      issuer: string;
    }
  ];
  couple: boolean;
  currentAddress: string;
  currentDistrictId: string;
  currentProvinceId: string;
  currentSubDistrictId: string;
  currentZipCode: string;
  dateOfBirth: any;
  docs: any;
  draft: boolean;
  education: Education[];
  examNumber: number;
  examRound: string;
  fatherFirstName: string;
  fatherLastName: string;
  fatherOccupation: string;
  fatherPrefix: string;
  firstname: string;
  fullName: string;
  gender: string;
  idCard: string;
  isProperty: [
    {
      name: string;
      value: boolean;
    }
  ];
  isRelief: boolean;
  lastname: string;
  marryFirstName: string;
  marryLastName: string;
  marryOccupation: string;
  marryPrefix: string;
  motherFirstName: string;
  motherLastName: string;
  motherOccupation: string;
  motherPrefix: string;
  nationality: string;
  pass: string;
  personalId: string;
  point: number;
  pointA: number;
  pointB: number;
  pointC: number;
  pointTotal: number;
  pointTotalA: number;
  pointTotalB: number;
  pointTotalC: number;
  positionCandidate: string;
  positionCandidateId: string;
  prefix: string;
  race: string;
  registAddress: string;
  registDistrictId: string;
  registProvinceId: string;
  registSame: boolean;
  registSubDistrictId: string;
  registZipCode: string;
  relationship: string;
  religion: string;
  telephone: string;
}

interface Education {
  country: string;
  degree: string;
  duration: string;
  durationYear: string;
  educationLevel: string;
  educationLevelId: string;
  endDate: string;
  field: string;
  finishDate: Date;
  fundName: string;
  gpa: string;
  id: string;
  institute: string;
  isDate: boolean;
  isEducation: string;
  other: string;
  positionPath: string;
  positionPathId: string;
  startDate: string;
}

interface StatResponse {
  total: number;
  unContain: number;
  prepareContain: number;
  done: number;
  disclaim: number;
  report: number;
}

export type { OpType, DataPerson, Education, StatResponse };
