// ----------------------------------------------------------------------

export type Corporate = {
  id: number;
  code: string;
  name?: string;
  welcome_message?: string;
  reason?: string;
  help_text?: string;
  logo?: any;
  logo_url?: string;
  active: boolean | number;
  divisions?: Division[];
  employees?: Employee[];
  current_policy?: Policy;
};

export type Division = {
  id: number;
  corporate_id: number;
  code: string;
  name?: string;
}

export type Employee = {
  id: number;
  name: string;
}

export type Policy = {
  id: number;
  corporate_id: number;
  code: string;
  total_premi: number;
  minimal_deposit_percentage: number;
  minimal_deposit_net: number;
  minimal_alert_percentage: number;
  minimal_alert_net: number;
  minimal_stop_service_percentage: number;
  minimal_stop_service_net: number;
  start: string | Date;
  end: string | Date;
}

export type CorporatePlan = {
  id: number;
  corporate_id: number;
  code: string;
  name: string;
  description: string | null;
  active: boolean | number;
}

export type Plan = {
  id: number;
  corporate_plan: CorporatePlan | null;
  service_code: string;
  corporate_plan_id: string;
  code: string;
  type: string;
  start: string;
  end: string;
  require_referral: string;
  referral_source: string;
  referral_duration: string;
  family_plan: string;
  family_plan_share_rules: string;
  limit_rules: string;
  layer: string;
  layer_conditions: string;
  budget_type: string;
  budget_code: string;
  budget_conditions: string;
  surgery_limit: string;
  non_surgery_limit: string;
  max_claim_limit: string;
  max_claim_count: string;
  area_limit: string;
  limit_shared_plans: string;
  limit_shared_plan_type: string;
  cashless_percentage: string;
  reimbursement_percentage: string;
  digital_percentage: string;
  co_share_m_percentage: string;
  co_share_s_percentage: string;
  co_share_c_percentage: string;
  cashless_deductible: string;
  reimbursement_deductible: string;
  digital_deductible: string;
  co_share_m_deductible: string;
  co_share_s_deductible: string;
  co_share_c_deductible: string;
  co_share_deductible_condition: string;
  msc: string;
  genders: string;
  min_age: string;
  max_age: string;
  rule_of_excess: string;
  max_excess_covered: string;
  prorate_type: string;
  prorate_lookup: string;
  currency: string;
  max_surgery_reinstatement_days: string;
  max_surgery_periode_days: string;
}

export type CorporateBenefit = {
  id: number;
  corporate_id: number;
  code: string;
  name: string;
  description: string | null;
  active: boolean | number;
}

export type Benefit = {
  service_code : string;
  plan_code : string;
  benefit_code : string;
  code : string;
  description : string;
  budget : string;
  budget_conditions : string;
  budget_code : string;
  primary_benefit_code : string;
  benefit_mode : string;
  room_class_coverage : string;
  max_bed_coverage : string;
  tolerance_parameter : string;
  max_room_class : string;
  limit_amount : string;
  area_limit : string;
  shared_benefit : string;
  shared_benefit_type : string;
  msc : string;
  genders : string;
  min_age : string;
  max_age : string;
  max_frequency_period : string;
  daily_frequency : string;
  weekly_frequency : string;
  monthly_frequency : string;
  yearly_frequency : string;
  custom_frequency_days : string;
  custom_duration_value : string;
  allowed_transaction_types : string;
  high_plan_factor : string;
  pre_post_treatment : string;
  pre_treatment_days : string;
  post_treatment_days : string;
  layer_type_1 : string;
  layer_value_1 : string;
  layer_type_2 : string;
  layer_value_2 : string;
  cashless_percentage : string;
  reimbursement_percentage : string;
  digital_percentage : string;
  co_share_m_percentage : string;
  co_share_s_percentage : string;
  co_share_c_percentage : string;
  cashless_deductible : string;
  reimbursement_deductible : string;
  digital_deductible : string;
  co_share_m_deductible : string;
  co_share_s_deductible : string;
  co_share_c_deductible : string;
  prorate_type : string;
  prorate_lookup : string;
  max_days_for_disability : string;
  max_period_for_disability : string;
  currency : string;
  show_benefit_item : string;
  show_benefit_value : string;
}

export type CorporateService = {
  id?: string | number;
  corporate_id?: string | number;
  description?: string;
  name?: string;
  service_code: string;
  status: string;
  configurations: any;
}
