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

// - - - - - - - - - - - - - - - - - - - -
//            @method {get}
// - - - - - - - - - - - - - - - - - - - -
/*!
 * ESI endpoint: get:/universe/ancestries/
 */
/**
 * 200 ok array
 *
 * @maxItems 100
 */
type GetUniverseAncestriesOk = GetUniverseAncestries_200Ok[];

/**
 * 200 ok object
 */
interface GetUniverseAncestries_200Ok {
  /**
   * The bloodline associated with this ancestry
   */
  bloodline_id: number;
  /**
   * description string
   */
  description: string;
  /**
   * icon_id integer
   */
  icon_id?: number;
  /**
   * id integer
   */
  id: number;
  /**
   * name string
   */
  name: string;
  /**
   * short_description string
   */
  short_description?: string;
  [k: string]: unknown | undefined;
}

/*!
 * ESI endpoint: get:/universe/asteroid_belts/{asteroid_belt_id}/
 */

/**
 * 200 ok object
 */
interface GetUniverseAsteroidBeltsAsteroidBeltIdOk {
  /**
   * name string
   */
  name: string;
  position: GetUniverseAsteroidBeltsAsteroidBeltIdPosition;
  /**
   * The solar system this asteroid belt is in
   */
  system_id: number;
  [k: string]: unknown | undefined;
}
/**
 * position object
 */
interface GetUniverseAsteroidBeltsAsteroidBeltIdPosition {
  /**
   * x number
   */
  x: number;
  /**
   * y number
   */
  y: number;
  /**
   * z number
   */
  z: number;
  [k: string]: unknown | undefined;
}

/*!
 * ESI endpoint: get:/universe/bloodlines/
 */
/**
 * 200 ok array
 *
 * @maxItems 100
 */
type GetUniverseBloodlinesOk = GetUniverseBloodlines_200Ok[];

/**
 * 200 ok object
 */
interface GetUniverseBloodlines_200Ok {
  /**
   * bloodline_id integer
   */
  bloodline_id: number;
  /**
   * charisma integer
   */
  charisma: number;
  /**
   * corporation_id integer
   */
  corporation_id: number;
  /**
   * description string
   */
  description: string;
  /**
   * intelligence integer
   */
  intelligence: number;
  /**
   * memory integer
   */
  memory: number;
  /**
   * name string
   */
  name: string;
  /**
   * perception integer
   */
  perception: number;
  /**
   * race_id integer
   */
  race_id: number;
  ship_type_id: number;
  /**
   * willpower integer
   */
  willpower: number;
  [k: string]: unknown | undefined;
}

/*!
 * ESI endpoint: get:/universe/categories/
 */
/**
 * 200 ok array
 *
 * @maxItems 10000
 */
type GetUniverseCategoriesOk = number[];

/*!
 * ESI endpoint: get:/universe/categories/{category_id}/
 */

/**
 * 200 ok object
 */
interface GetUniverseCategoriesCategoryIdOk {
  /**
   * category_id integer
   */
  category_id: number;
  /**
   * groups array
   *
   * @maxItems 10000
   */
  groups: number[];
  /**
   * name string
   */
  name: string;
  /**
   * published boolean
   */
  published: boolean;
  [k: string]: unknown | undefined;
}

/*!
 * ESI endpoint: get:/universe/constellations/
 */
/**
 * 200 ok array
 *
 * @maxItems 10000
 */
type GetUniverseConstellationsOk = number[];

/*!
 * ESI endpoint: get:/universe/constellations/{constellation_id}/
 */

/**
 * 200 ok object
 */
interface GetUniverseConstellationsConstellationIdOk {
  /**
   * constellation_id integer
   */
  constellation_id: number;
  /**
   * name string
   */
  name: string;
  position: GetUniverseConstellationsConstellationIdPosition;
  /**
   * The region this constellation is in
   */
  region_id: number;
  /**
   * systems array
   *
   * @maxItems 10000
   */
  systems: number[];
  [k: string]: unknown | undefined;
}
/**
 * position object
 */
interface GetUniverseConstellationsConstellationIdPosition {
  /**
   * x number
   */
  x: number;
  /**
   * y number
   */
  y: number;
  /**
   * z number
   */
  z: number;
  [k: string]: unknown | undefined;
}

/*!
 * ESI endpoint: get:/universe/factions/
 */
/**
 * 200 ok array
 *
 * @maxItems 10000
 */
type GetUniverseFactionsOk = GetUniverseFactions_200Ok[];

/**
 * 200 ok object
 */
interface GetUniverseFactions_200Ok {
  /**
   * corporation_id integer
   */
  corporation_id?: number;
  /**
   * description string
   */
  description: string;
  /**
   * faction_id integer
   */
  faction_id: number;
  /**
   * is_unique boolean
   */
  is_unique: boolean;
  /**
   * militia_corporation_id integer
   */
  militia_corporation_id?: number;
  /**
   * name string
   */
  name: string;
  /**
   * size_factor number
   */
  size_factor: number;
  /**
   * solar_system_id integer
   */
  solar_system_id?: number;
  /**
   * station_count integer
   */
  station_count: number;
  /**
   * station_system_count integer
   */
  station_system_count: number;
  [k: string]: unknown | undefined;
}

/*!
 * ESI endpoint: get:/universe/graphics/
 */
/**
 * 200 ok array
 *
 * @maxItems 10000
 */
type GetUniverseGraphicsOk = number[];

/*!
 * ESI endpoint: get:/universe/graphics/{graphic_id}/
 */

/**
 * 200 ok object
 */
interface GetUniverseGraphicsGraphicIdOk {
  /**
   * collision_file string
   */
  collision_file?: string;
  /**
   * graphic_file string
   */
  graphic_file?: string;
  /**
   * graphic_id integer
   */
  graphic_id: number;
  /**
   * icon_folder string
   */
  icon_folder?: string;
  /**
   * sof_dna string
   */
  sof_dna?: string;
  /**
   * sof_fation_name string
   */
  sof_fation_name?: string;
  /**
   * sof_hull_name string
   */
  sof_hull_name?: string;
  /**
   * sof_race_name string
   */
  sof_race_name?: string;
  [k: string]: unknown | undefined;
}

/*!
 * ESI endpoint: get:/universe/groups/
 */
/**
 * 200 ok array
 *
 * @maxItems 1000
 */
type GetUniverseGroupsOk = number[];

/*!
 * ESI endpoint: get:/universe/groups/{group_id}/
 */

/**
 * 200 ok object
 */
interface GetUniverseGroupsGroupIdOk {
  /**
   * category_id integer
   */
  category_id: number;
  /**
   * group_id integer
   */
  group_id: number;
  /**
   * name string
   */
  name: string;
  /**
   * published boolean
   */
  published: boolean;
  types: number[];
  [k: string]: unknown | undefined;
}

/*!
 * ESI endpoint: get:/universe/moons/{moon_id}/
 */

/**
 * 200 ok object
 */
interface GetUniverseMoonsMoonIdOk {
  /**
   * moon_id integer
   */
  moon_id: number;
  /**
   * name string
   */
  name: string;
  position: GetUniverseMoonsMoonIdPosition;
  /**
   * The solar system this moon is in
   */
  system_id: number;
  [k: string]: unknown | undefined;
}
/**
 * position object
 */
interface GetUniverseMoonsMoonIdPosition {
  /**
   * x number
   */
  x: number;
  /**
   * y number
   */
  y: number;
  /**
   * z number
   */
  z: number;
  [k: string]: unknown | undefined;
}

/*!
 * ESI endpoint: get:/universe/planets/{planet_id}/
 */

/**
 * 200 ok object
 */
interface GetUniversePlanetsPlanetIdOk {
  /**
   * name string
   */
  name: string;
  /**
   * planet_id integer
   */
  planet_id: number;
  position: GetUniversePlanetsPlanetIdPosition;
  /**
   * The solar system this planet is in
   */
  system_id: number;
  type_id: number;
  [k: string]: unknown | undefined;
}
/**
 * position object
 */
interface GetUniversePlanetsPlanetIdPosition {
  /**
   * x number
   */
  x: number;
  /**
   * y number
   */
  y: number;
  /**
   * z number
   */
  z: number;
  [k: string]: unknown | undefined;
}

/*!
 * ESI endpoint: get:/universe/races/
 */
/**
 * 200 ok array
 *
 * @maxItems 6
 */
type GetUniverseRacesOk = GetUniverseRaces_200Ok[];

/**
 * 200 ok object
 */
interface GetUniverseRaces_200Ok {
  /**
   * The alliance generally associated with this race
   */
  alliance_id: number;
  /**
   * description string
   */
  description: string;
  /**
   * name string
   */
  name: string;
  /**
   * race_id integer
   */
  race_id: number;
  [k: string]: unknown | undefined;
}

/*!
 * ESI endpoint: get:/universe/regions/
 */
/**
 * 200 ok array
 *
 * @maxItems 1000
 */
type GetUniverseRegionsOk = number[];

/*!
 * ESI endpoint: get:/universe/regions/{region_id}/
 */

/**
 * 200 ok object
 */
interface GetUniverseRegionsRegionIdOk {
  /**
   * constellations array
   *
   * @maxItems 1000
   */
  constellations: number[];
  /**
   * description string
   */
  description?: string;
  /**
   * name string
   */
  name: string;
  /**
   * region_id integer
   */
  region_id: number;
  [k: string]: unknown | undefined;
}

/*!
 * ESI endpoint: get:/universe/stargates/{stargate_id}/
 */

/**
 * 200 ok object
 */
interface GetUniverseStargatesStargateIdOk {
  destination: GetUniverseStargatesStargateIdDestination;
  /**
   * name string
   */
  name: string;
  position: GetUniverseStargatesStargateIdPosition;
  /**
   * stargate_id integer
   */
  stargate_id: number;
  /**
   * The solar system this stargate is in
   */
  system_id: number;
  type_id: number;
  [k: string]: unknown | undefined;
}
/**
 * destination object
 */
interface GetUniverseStargatesStargateIdDestination {
  /**
   * The stargate this stargate connects to
   */
  stargate_id: number;
  /**
   * The solar system this stargate connects to
   */
  system_id: number;
  [k: string]: unknown | undefined;
}
/**
 * position object
 */
interface GetUniverseStargatesStargateIdPosition {
  /**
   * x number
   */
  x: number;
  /**
   * y number
   */
  y: number;
  /**
   * z number
   */
  z: number;
  [k: string]: unknown | undefined;
}

/*!
 * ESI endpoint: get:/universe/stars/{star_id}/
 */
/**
 * spectral_class string
 */
type GetUniverseStarsStarIdSpectralClass =
  | "K2 V"
  | "K4 V"
  | "G2 V"
  | "G8 V"
  | "M7 V"
  | "K7 V"
  | "M2 V"
  | "K5 V"
  | "M3 V"
  | "G0 V"
  | "G7 V"
  | "G3 V"
  | "F9 V"
  | "G5 V"
  | "F6 V"
  | "K8 V"
  | "K9 V"
  | "K6 V"
  | "G9 V"
  | "G6 V"
  | "G4 VI"
  | "G4 V"
  | "F8 V"
  | "F2 V"
  | "F1 V"
  | "K3 V"
  | "F0 VI"
  | "G1 VI"
  | "G0 VI"
  | "K1 V"
  | "M4 V"
  | "M1 V"
  | "M6 V"
  | "M0 V"
  | "K2 IV"
  | "G2 VI"
  | "K0 V"
  | "K5 IV"
  | "F5 VI"
  | "G6 VI"
  | "F6 VI"
  | "F2 IV"
  | "G3 VI"
  | "M8 V"
  | "F1 VI"
  | "K1 IV"
  | "F7 V"
  | "G5 VI"
  | "M5 V"
  | "G7 VI"
  | "F5 V"
  | "F4 VI"
  | "F8 VI"
  | "K3 IV"
  | "F4 IV"
  | "F0 V"
  | "G7 IV"
  | "G8 VI"
  | "F2 VI"
  | "F4 V"
  | "F7 VI"
  | "F3 V"
  | "G1 V"
  | "G9 VI"
  | "F3 IV"
  | "F9 VI"
  | "M9 V"
  | "K0 IV"
  | "F1 IV"
  | "G4 IV"
  | "F3 VI"
  | "K4 IV"
  | "G5 IV"
  | "G3 IV"
  | "G1 IV"
  | "K7 IV"
  | "G0 IV"
  | "K6 IV"
  | "K9 IV"
  | "G2 IV"
  | "F9 IV"
  | "F0 IV"
  | "K8 IV"
  | "G8 IV"
  | "F6 IV"
  | "F5 IV"
  | "A0"
  | "A0IV"
  | "A0IV2";

/**
 * 200 ok object
 */
interface GetUniverseStarsStarIdOk {
  /**
   * Age of star in years
   */
  age: number;
  /**
   * luminosity number
   */
  luminosity: number;
  /**
   * name string
   */
  name: string;
  /**
   * radius integer
   */
  radius: number;
  /**
   * solar_system_id integer
   */
  solar_system_id: number;
  spectral_class: GetUniverseStarsStarIdSpectralClass;
  /**
   * temperature integer
   */
  temperature: number;
  type_id: number;
  [k: string]: unknown | undefined;
}

/*!
 * ESI endpoint: get:/universe/stations/{station_id}/
 */
/**
 * service string
 */
type GetUniverseStationsStationIdService =
  | "bounty-missions"
  | "assasination-missions"
  | "courier-missions"
  | "interbus"
  | "reprocessing-plant"
  | "refinery"
  | "market"
  | "black-market"
  | "stock-exchange"
  | "cloning"
  | "surgery"
  | "dna-therapy"
  | "repair-facilities"
  | "factory"
  | "labratory"
  | "gambling"
  | "fitting"
  | "paintshop"
  | "news"
  | "storage"
  | "insurance"
  | "docking"
  | "office-rental"
  | "jump-clone-facility"
  | "loyalty-point-store"
  | "navy-offices"
  | "security-offices";
/**
 * services array
 *
 * @maxItems 30
 */
type GetUniverseStationsStationIdServices = GetUniverseStationsStationIdService[];

/**
 * 200 ok object
 */
interface GetUniverseStationsStationIdOk {
  /**
   * max_dockable_ship_volume number
   */
  max_dockable_ship_volume: number;
  /**
   * name string
   */
  name: string;
  /**
   * office_rental_cost number
   */
  office_rental_cost: number;
  /**
   * ID of the corporation that controls this station
   */
  owner?: number;
  position: GetUniverseStationsStationIdPosition;
  /**
   * race_id integer
   */
  race_id?: number;
  /**
   * reprocessing_efficiency number
   */
  reprocessing_efficiency: number;
  /**
   * reprocessing_stations_take number
   */
  reprocessing_stations_take: number;
  services: GetUniverseStationsStationIdServices;
  /**
   * station_id integer
   */
  station_id: number;
  /**
   * The solar system this station is in
   */
  system_id: number;
  type_id: number;
  [k: string]: unknown | undefined;
}
/**
 * position object
 */
interface GetUniverseStationsStationIdPosition {
  /**
   * x number
   */
  x: number;
  /**
   * y number
   */
  y: number;
  /**
   * z number
   */
  z: number;
  [k: string]: unknown | undefined;
}

/*!
 * ESI endpoint: get:/universe/structures/
 */
/**
 * 200 ok array
 *
 * @maxItems 10000
 */
type GetUniverseStructuresOk = number[];

/*!
 * ESI endpoint: get:/universe/structures/{structure_id}/
 */

/**
 * 200 ok object
 */
interface GetUniverseStructuresStructureIdOk {
  /**
   * The full name of the structure
   */
  name: string;
  /**
   * The ID of the corporation who owns this particular structure
   */
  owner_id: number;
  position?: GetUniverseStructuresStructureIdPosition;
  /**
   * solar_system_id integer
   */
  solar_system_id: number;
  type_id?: number;
  [k: string]: unknown | undefined;
}
/**
 * Coordinates of the structure in Cartesian space relative to the Sun, in metres.
 *
 */
interface GetUniverseStructuresStructureIdPosition {
  /**
   * x number
   */
  x: number;
  /**
   * y number
   */
  y: number;
  /**
   * z number
   */
  z: number;
  [k: string]: unknown | undefined;
}

/*!
 * ESI endpoint: get:/universe/system_jumps/
 */
/**
 * 200 ok array
 *
 * @maxItems 10000
 */
type GetUniverseSystemJumpsOk = GetUniverseSystemJumps_200Ok[];

/**
 * 200 ok object
 */
interface GetUniverseSystemJumps_200Ok {
  /**
   * ship_jumps integer
   */
  ship_jumps: number;
  /**
   * system_id integer
   */
  system_id: number;
  [k: string]: unknown | undefined;
}

/*!
 * ESI endpoint: get:/universe/system_kills/
 */
/**
 * 200 ok array
 *
 * @maxItems 10000
 */
type GetUniverseSystemKillsOk = GetUniverseSystemKills_200Ok[];

/**
 * 200 ok object
 */
interface GetUniverseSystemKills_200Ok {
  /**
   * Number of NPC ships killed in this system
   */
  npc_kills: number;
  /**
   * Number of pods killed in this system
   */
  pod_kills: number;
  /**
   * Number of player ships killed in this system
   */
  ship_kills: number;
  /**
   * system_id integer
   */
  system_id: number;
  [k: string]: unknown | undefined;
}

/*!
 * ESI endpoint: get:/universe/systems/
 */
/**
 * 200 ok array
 *
 * @maxItems 10000
 */
type GetUniverseSystemsOk = number[];

/*!
 * ESI endpoint: get:/universe/systems/{system_id}/
 */
/**
 * planets array
 *
 * @maxItems 1000
 */
type GetUniverseSystemsSystemIdPlanets = GetUniverseSystemsSystemIdPlanet[];

/**
 * 200 ok object
 */
interface GetUniverseSystemsSystemIdOk {
  /**
   * The constellation this solar system is in
   */
  constellation_id: number;
  /**
   * name string
   */
  name: string;
  planets?: GetUniverseSystemsSystemIdPlanets;
  position: GetUniverseSystemsSystemIdPosition;
  /**
   * security_class string
   */
  security_class?: string;
  /**
   * security_status number
   */
  security_status: number;
  /**
   * star_id integer
   */
  star_id?: number;
  /**
   * stargates array
   *
   * @maxItems 25
   */
  stargates?: number[];
  /**
   * stations array
   *
   * @maxItems 25
   */
  stations?: number[];
  /**
   * system_id integer
   */
  system_id: number;
  [k: string]: unknown | undefined;
}
/**
 * planet object
 */
interface GetUniverseSystemsSystemIdPlanet {
  /**
   * asteroid_belts array
   *
   * @maxItems 100
   */
  asteroid_belts?: number[];
  /**
   * moons array
   *
   * @maxItems 1000
   */
  moons?: number[];
  /**
   * planet_id integer
   */
  planet_id: number;
  [k: string]: unknown | undefined;
}
/**
 * position object
 */
interface GetUniverseSystemsSystemIdPosition {
  /**
   * x number
   */
  x: number;
  /**
   * y number
   */
  y: number;
  /**
   * z number
   */
  z: number;
  [k: string]: unknown | undefined;
}

/*!
 * ESI endpoint: get:/universe/types/
 */
/**
 * 200 ok array
 *
 * @maxItems 1000
 */
type GetUniverseTypesOk = number[];

/*!
 * ESI endpoint: get:/universe/types/{type_id}/
 */
/**
 * dogma_attributes array
 *
 * @maxItems 1000
 */
type GetUniverseTypesTypeIdDogmaAttributes = GetUniverseTypesTypeIdDogmaAttribute[];
/**
 * dogma_effects array
 *
 * @maxItems 1000
 */
type GetUniverseTypesTypeIdDogmaEffects = GetUniverseTypesTypeIdDogmaEffect[];

/**
 * 200 ok object
 */
interface GetUniverseTypesTypeIdOk {
  /**
   * capacity number
   */
  capacity?: number;
  /**
   * description string
   */
  description: string;
  dogma_attributes?: GetUniverseTypesTypeIdDogmaAttributes;
  dogma_effects?: GetUniverseTypesTypeIdDogmaEffects;
  /**
   * graphic_id integer
   */
  graphic_id?: number;
  /**
   * group_id integer
   */
  group_id: number;
  /**
   * icon_id integer
   */
  icon_id?: number;
  /**
   * This only exists for types that can be put on the market
   */
  market_group_id?: number;
  /**
   * mass number
   */
  mass?: number;
  /**
   * name string
   */
  name: string;
  /**
   * packaged_volume number
   */
  packaged_volume?: number;
  /**
   * portion_size integer
   */
  portion_size?: number;
  /**
   * published boolean
   */
  published: boolean;
  /**
   * radius number
   */
  radius?: number;
  type_id: number;
  /**
   * volume number
   */
  volume?: number;
  [k: string]: unknown | undefined;
}
/**
 * dogma_attribute object
 */
interface GetUniverseTypesTypeIdDogmaAttribute {
  /**
   * attribute_id integer
   */
  attribute_id: number;
  /**
   * value number
   */
  value: number;
  [k: string]: unknown | undefined;
}
/**
 * dogma_effect object
 */
interface GetUniverseTypesTypeIdDogmaEffect {
  /**
   * effect_id integer
   */
  effect_id: number;
  /**
   * is_default boolean
   */
  is_default: boolean;
  [k: string]: unknown | undefined;
}

// - - - - - - - - - - - - - - - - - - - -
//            @method {post}
// - - - - - - - - - - - - - - - - - - - -
/*!
 * ESI endpoint: post:/universe/ids/
 */

/**
 * shared interface
 */
interface PostUniverseIdsEntity {
    /**
     * id integer
     */
    id?: number;
    /**
     * name string
     */
    name?: string;
    [k: string]: unknown | undefined;
  }
  
  /**
   * 200 ok object
   */
  interface PostUniverseIdsOk {
    /**
     * agents array
     *
     * @maxItems 500
     */
    agents?: PostUniverseIdsEntity[];
    /**
     * alliances array
     *
     * @maxItems 500
     */
    alliances?: PostUniverseIdsEntity[];
    /**
     * characters array
     *
     * @maxItems 500
     */
    characters?: PostUniverseIdsEntity[];
    /**
     * constellations array
     *
     * @maxItems 500
     */
    constellations?: PostUniverseIdsEntity[];
    /**
     * corporations array
     *
     * @maxItems 500
     */
    corporations?: PostUniverseIdsEntity[];
    /**
     * factions array
     *
     * @maxItems 500
     */
    factions?: PostUniverseIdsEntity[];
    /**
     * inventory_types array
     *
     * @maxItems 500
     */
    inventory_types?: PostUniverseIdsEntity[];
    /**
     * regions array
     *
     * @maxItems 500
     */
    regions?: PostUniverseIdsEntity[];
    /**
     * stations array
     *
     * @maxItems 500
     */
    stations?: PostUniverseIdsEntity[];
    /**
     * systems array
     *
     * @maxItems 500
     */
    systems?: PostUniverseIdsEntity[];
    [k: string]: unknown | undefined;
  }
  
/*!
 * ESI endpoint: post:/universe/names/
 */
/**
 * category string
 */
type PostUniverseNamesCategory =
  | "alliance"
  | "character"
  | "constellation"
  | "corporation"
  | "inventory_type"
  | "region"
  | "solar_system"
  | "station"
  | "faction";
/**
 * 200 ok array
 *
 * @maxItems 1000
 */
type PostUniverseNamesOk = PostUniverseNames_200Ok[];

/**
 * 200 ok object
 */
interface PostUniverseNames_200Ok {
  category: PostUniverseNamesCategory;
  /**
   * id integer
   */
  id: number;
  /**
   * name string
   */
  name: string;
  [k: string]: unknown | undefined;
}
