export type EventEducationAllResponse = {
  id: string;
  displayName: string;
  type: string;
  relation: string;
  organization: string;
  capacity: string;
  logoId: string;
  loginFrom: string;
  loginTo: string;
  loginSkautis: string;
  loginLocation: string;
  startDate: string;
  endDate: string;
  participantEducation: string;
  unitId: string;
  enrollId: string;
  educationCourseId: string;
  registrationDeadline: string;
};

export type EventEducationTypeAllResponse = {
  id: string;
  displayName: string;
};

export type EventEducationGroupAllResponse = {
  id: string;
  displayName: string;
};

export type EventEducationCourseDetailEnrollResponse = {
  id: string;
  displayName: string;
  type: string;
  organization: string;
  loginFrom: string;
  loginTo: string;
  person: string;
  personIdentificationCode: string;
  personUnit: string;
  personAddress: string;
  personEmail: string;
  personPhone: string;
  isVerdictGroupRequired: boolean;
  isVerdictDistrictRequired: boolean;
  isVerdictAreaRequired: boolean;
  isVerdictHealthRequired: boolean;
  personVerdictGroup: string;
  dateVerdictGroup: string;
  verdictGroup: string;
  personVerdictDistrict: string;
  dateVerdictDistrict: string;
  verdictDistrict: string;
  personVerdictArea: string;
  dateVerdictArea: string;
  verdictArea: string;
  personVerdictHealth: string;
  dateVerdictHealth: string;
  verdictHealthDocumentId: string;
};

export type EventEducationDetailResponse = {
  id: string;
  displayName: string;
  loginSkautis: string;
  loginLocation: string;
  loginFrom: string;
  loginTo: string;
  web: string;
  registrationNumber: string;
  unit: string;
  unitId: string;
  location: string;
  contactEmail: string;
  contactPhone: string;
  note: string;
  startDate: string;
  endDate: string;
  dateUnitApproved: string;
  publicized: string;
  approved: string;
  grant: string;
  grantDecision: string;
  grantDecisionConfirmed: string;
  advanceSent: string;
  isForester: boolean;
  isQualifyingExam: boolean;
  hasGrantRequest: boolean;
};

export type EventEducationCourseAllResponse = {
  id: string;
  type: string;
  capacity: string;
  courseCapacity: string;
  substituteCapacity: string;
  deadline: string;
  estimateCapacity: string;
  personDays: string;
  note: string;
};

export type EventEducationCourseTermAllResponse = {
  locationId: string;
  course: string;
  location: string;
  date: string;
};

export type EventEducationLocationDetailResponse = {
  id: string;
  firstLine: string;
  street: string;
  postcode: string;
  city: string;
  region: string;
  latitude: string;
  longitude: string;
  note: string;
};

export type EventEducationOtherDetailResponse = {
  education: string;
  description: string;
  annotation: string;
  targetGroup: string;
  focus: string;
  entryConditions: string;
  graduateConditions: string;
  authenticationForm: string;
  fee: string;
  nextOccurrenceYear: string;
  frequency: string;
  graduates: string;
  isChildFriendly: boolean;
  isAgeRestricted: boolean;
  history: string;
  photoGallery: string;
};

export type EventEducationOtherIllustrativePhotoAllResponse = {
  displayName: string;
  documentId: string;
  documentIdSmall: string;
};

export type EventCongressAllResponse = {
  id: string;
  eventName: string;
  type: string;
  location: string;
  unitId: string;
  unit: string;
  startDate: string;
  endDate: string;
};

export type EventCongressDetailResponse = {
  id: string;
  type: string;
  state: string;
  unitId: string;
  registrationNumber: string;
  unit: string;
  unitRegistration: string;
  unitRegistrationId: string;
  startDate: string;
  endDate: string;
  promulgationDeadline: string;
  commissionDeadline: string;
  candidateDeadline: string;
  location: string;
  latitude: string;
  longitude: string;
  note: string;
  alternativeLocation: string;
  alternativeStartDate: string;
  alternativeEndDate: string;
  alternativeLatitude: string;
  alternativeLongitude: string;
  arriveDeadline: string;
  departureDeadline: string;
  transportDeadline: string;
  accommodationDeadline: string;
  foodDeadline: string;
  participantFee: string;
};

export type CandidateAllResponse = {
  id: string;
  state: string;
  personId: string;
  person: string;
  personWith: string;
  congressFunction: string;
  function: string;
  order: string;
  votesCount: string;
  isElected: boolean;
};

export type CandidateContactAllResponse = {
  contactType: string;
  value: string;
  note: string;
};

export type CandidateDetailResponse = {
  congress: string;
  function: string;
  personCreate: string;
  dateCreate: string;
  displayName: string;
  personWith: string;
  career: string;
  presentation: string;
  suggesterName: string;
  suggesterFunction: string;
  suggesterDescription: string;
};

export type CandidateDetailPersonResponse = {
  degreeInFront: string;
  degreeBehind: string;
  firstName: string;
  lastName: string;
  nickName: string;
  birthday: string;
  city: string;
  yearFrom: string;
  unit: string;
};

export type CandidateEducationSeminaryAllResponse = {
  seminary: string;
  yearFrom: string;
};

export type CandidateFunctionAllResponse = {
  type: string;
  unit: string;
  validFrom: string;
  validTo: string;
};

export type CandidateQualificationAllResponse = {
  type: string;
  validFrom: string;
  note: string;
};

export type CandidateRecommendationAllResponse = {
  displayName: string;
  relation: string;
  description: string;
};

export type EventCongressFunctionAllMaxResponse = {
  type: string;
  count: string;
};

export type EventCongressFunctionAllResponse = {
  function: string;
  count: string;
  totalCount: string;
};

export type EventCongressDecisionAllResponse = {
  type: string;
  decisionType: string;
  text: string;
  decision: string;
  suggester: string;
};

export type EventCampStateAllResponse = {
  id: string;
  displayName: string;
};

export type EventCampAllResponse = {
  id: string;
  displayName: string;
  state: string;
  startDate: string;
  endDate: string;
  regNumber: string;
  unit: string;
  unitId: string;
  location: string;
  personLeader: string;
  mobile: string;
  dateReal: string;
};

export type EventCampDetailResponse = {
  id: string;
  displayName: string;
  unit: string;
  unitId: string;
  regNumber: string;
  state: string;
  stateId: string;
  type: string;
  startDate: string;
  endDate: string;
  totalDays: string;
  isRecovering: boolean;
  mobile: string;
  campPlace: string;
  campPlaceId: string;
  region: string;
  location: string;
  postcode: string;
  isFloodArea: boolean;
  note: string;
  latitude: string;
  longitude: string;
  unitIds: string[];
  estimateAdult: string;
  realAdult: string;
  estimateCount: string;
  realCount: string;
  estimateChildDays: string;
  realChildDays: string;
  estimatePersonDays: string;
  realPersonDays: string;
  personApproved: string;
  dateApproved: string;
  personApprovedParent: string;
  dateApprovedParent: string;
  dateApprovedExecutive: string;
  personReal: string;
  dateReal: string;
};

export type EventFunctionAllCampResponse = {
  id: string;
  name: string;
  personId: string;
  role: string;
  note: string;
};

export type EventFunctionAllCampPayload = {
  id: string;
  role: string;
  note: string;
};

export type EventCampStatisticDetailResponse = {
  benjaminci: string;
  vlce: string;
  svetluska: string;
  skaut: string;
  skautka: string;
  rover: string;
  ranger: string;
  adultFemale: string;
  adultMale: string;
};

export type ParticipantCampAllResponse = {
  id: string;
  name: string;
  personId: string;
  category: string;
  birthday: string;
  address: string;
  unitNumber: string;
  age: string;
  days: string;
  isEstimate: boolean;
  isReal: boolean;
  note: string;
};

export type ParticipantCampUpdatePayload = {
  isEstimate: boolean;
  isReal: boolean;
  note: string;
  days: string;
};

export type ParticipantCampInsertNewPayload = {
  firstName: string;
  lastName: string;
  nickName: string;
  regNumber: string;
  note: string;
  isForeign: boolean;
};

export type CampTypeAllResponse = {
  id: string;
  displayName: string;
};

export type RegionAllResponse = {
  id: string;
  displayName: string;
};

export type CampPlaceAllResponse = {
  id: string;
  displayName: string;
};

export type EventCampInsertPayload = {
  displayName: string;
  unitId: string;
  region: string;
  regionId: string;
  startDate: string;
  endDate: string;
  location: string;
  note: string;
  mobile: string;
  postcode: string;
  isFloodArea: boolean;
  campPlaceId: string;
  subUnitIds: string[];
  campTypeIds: string[];
};

export type EventGeneralStateAllResponse = {
  id: string;
  displayName: string;
};

export type EventGeneralTypeAllResponse = {
  id: string;
  displayName: string;
};

export type EventGeneralScopeAllResponse = {
  id: string;
  displayName: string;
};

export type EventGeneralAllResponse = {
  id: string;
  displayName: string;
  startDate: string;
  endDate: string;
  unit: string;
  unitId: string;
  type: string;
  scope: string;
  state: string;
  stateId: string;
};

export type EventGeneralDetailResponse = {
  id: string;
  displayName: string;
  stateId: string;
  unit: string;
  unitId: string;
  regNumber: string;
  eduUnit: string;
  eduUnitId: string;
  eduUnitRegNumber: string;
  state: string;
  personClosed: string;
  dateClosed: string;
  startDate: string;
  endDate: string;
  type: string;
  scope: string;
  note: string;
  location: string;
  postcode: string;
  region: string;
  latitude: string;
  longitude: string;
  totalParticipants: string;
  foreignParticipants: string;
  leaderParticipants: string;
  assistantParticipants: string;
  isAutoComputedDays: boolean;
  childDays: string;
  personDays: string;
  isStatisticAutoComputed: boolean;
  target: string;
  program: string;
};

export type EventFunctionAllGeneralResponse = {
  id: string;
  name: string;
  personId: string;
  role: string;
  note: string;
};

export type EventFunctionAllGeneralPayload = {
  id: string;
  role: string;
  note: string;
};

export type ParticipantGeneralAllResponse = {
  id: string;
  name: string;
  personId: string;
  category: string;
  birthday: string;
  address: string;
  unitNumber: string;
  unitId: string;
  unit: string;
  age: string;
  note: string;
  days: string;
};

export type ParticipantGeneralUpdatePayload = {
  note: string;
  days: string;
};

export type ParticipantGeneralInsertNewPayload = {
  firstName: string;
  lastName: string;
  nickName: string;
  regNumber: string;
  note: string;
  isForeign: boolean;
};

export type EventStatisticAllEventGeneralResponse = {
  category: string;
  count: string;
};

export type EventGeneralUpdateReportPayload = {
  target: string;
  program: string;
};

export type EventGeneralInsertPayload = {
  displayName: string;
  unitId: string;
  typeId: string;
  scopeId: string;
  startDate: string;
  endDate: string;
  note: string;
  location: string;
  region: string;
  postcode: string;
};
