// Generated by scripts/lib/code-synthesizer.mjs

// - - - - - - - - - - - - - - - - - - - -
//            @method {get}
// - - - - - - - - - - - - - - - - - - - -
/*!
 * ESI endpoint: get:/characters/{character_id}/attributes/
 */

/**
 * 200 ok object
 */
interface GetCharactersCharacterIdAttributesOk {
  /**
   * Neural remapping cooldown after a character uses remap accrued over time
   */
  accrued_remap_cooldown_date?: string;
  /**
   * Number of available bonus character neural remaps
   */
  bonus_remaps?: number;
  /**
   * charisma integer
   */
  charisma: number;
  /**
   * intelligence integer
   */
  intelligence: number;
  /**
   * Datetime of last neural remap, including usage of bonus remaps
   */
  last_remap_date?: string;
  /**
   * memory integer
   */
  memory: number;
  /**
   * perception integer
   */
  perception: number;
  /**
   * willpower integer
   */
  willpower: number;
  [k: string]: unknown | undefined;
}

/*!
 * ESI endpoint: get:/characters/{character_id}/skillqueue/
 */
/**
 * 200 ok array
 *
 * @maxItems 200
 */
type GetCharactersCharacterIdSkillqueueOk = GetCharactersCharacterIdSkillqueue_200Ok[];

/**
 * 200 ok object
 */
interface GetCharactersCharacterIdSkillqueue_200Ok {
  /**
   * Date on which training of the skill will complete. Omitted if the skill queue is paused.
   */
  finish_date?: string;
  /**
   * finished_level integer
   */
  finished_level: number;
  /**
   * level_end_sp integer
   */
  level_end_sp?: number;
  /**
   * Amount of SP that was in the skill when it started training it's current level. Used to calculate % of current level complete.
   */
  level_start_sp?: number;
  /**
   * queue_position integer
   */
  queue_position: number;
  /**
   * skill_id integer
   */
  skill_id: number;
  /**
   * start_date string
   */
  start_date?: string;
  /**
   * training_start_sp integer
   */
  training_start_sp?: number;
  [k: string]: unknown | undefined;
}

/*!
 * ESI endpoint: get:/characters/{character_id}/skills/
 */
/**
 * skills array
 *
 * @maxItems 1000
 */
type GetCharactersCharacterIdSkillsSkills = GetCharactersCharacterIdSkillsSkill[];

/**
 * 200 ok object
 */
interface GetCharactersCharacterIdSkillsOk {
  skills: GetCharactersCharacterIdSkillsSkills;
  /**
   * total_sp integer
   */
  total_sp: number;
  /**
   * Skill points available to be assigned
   */
  unallocated_sp?: number;
  [k: string]: unknown | undefined;
}
/**
 * skill object
 */
interface GetCharactersCharacterIdSkillsSkill {
  /**
   * active_skill_level integer
   */
  active_skill_level: number;
  /**
   * skill_id integer
   */
  skill_id: number;
  /**
   * skillpoints_in_skill integer
   */
  skillpoints_in_skill: number;
  /**
   * trained_skill_level integer
   */
  trained_skill_level: number;
  [k: string]: unknown | undefined;
}
