---@meta
---@diagnostic disable

--$Factorio 1.1.70
--$Overlay 5
--$Section defines
-- This file is automatically generated. Edits will be overwritten.

---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines)
---@class defines
defines={}

---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.alert_type)
---@class defines.alert_type
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.alert_type.custom)
---@class defines.alert_type.custom : defines.alert_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.alert_type.entity_destroyed)
---@class defines.alert_type.entity_destroyed : defines.alert_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.alert_type.entity_under_attack)
---@class defines.alert_type.entity_under_attack : defines.alert_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.alert_type.no_material_for_construction)
---@class defines.alert_type.no_material_for_construction : defines.alert_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.alert_type.no_storage)
---@class defines.alert_type.no_storage : defines.alert_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.alert_type.not_enough_construction_robots)
---@class defines.alert_type.not_enough_construction_robots : defines.alert_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.alert_type.not_enough_repair_packs)
---@class defines.alert_type.not_enough_repair_packs : defines.alert_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.alert_type.train_out_of_fuel)
---@class defines.alert_type.train_out_of_fuel : defines.alert_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.alert_type.turret_fire)
---@class defines.alert_type.turret_fire : defines.alert_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.alert_type)
---@class defines.alert_type.__index
---@field custom defines.alert_type.custom 
---@field entity_destroyed defines.alert_type.entity_destroyed 
---@field entity_under_attack defines.alert_type.entity_under_attack 
---@field no_material_for_construction defines.alert_type.no_material_for_construction 
---@field no_storage defines.alert_type.no_storage 
---@field not_enough_construction_robots defines.alert_type.not_enough_construction_robots 
---@field not_enough_repair_packs defines.alert_type.not_enough_repair_packs 
---@field train_out_of_fuel defines.alert_type.train_out_of_fuel 
---@field turret_fire defines.alert_type.turret_fire 
defines.alert_type={}
---AI command exit status. See [LuaEntity::set_command](https://lua-api.factorio.com/latest/LuaEntity.html#LuaEntity.set_command)
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.behavior_result)
---@class defines.behavior_result
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.behavior_result.deleted)
---@class defines.behavior_result.deleted : defines.behavior_result 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.behavior_result.fail)
---@class defines.behavior_result.fail : defines.behavior_result 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.behavior_result.in_progress)
---@class defines.behavior_result.in_progress : defines.behavior_result 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.behavior_result.success)
---@class defines.behavior_result.success : defines.behavior_result 
---AI command exit status. See [LuaEntity::set_command](https://lua-api.factorio.com/latest/LuaEntity.html#LuaEntity.set_command)
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.behavior_result)
---@class defines.behavior_result.__index
---@field deleted defines.behavior_result.deleted 
---@field fail defines.behavior_result.fail 
---@field in_progress defines.behavior_result.in_progress 
---@field success defines.behavior_result.success 
defines.behavior_result={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.build_check_type)
---@class defines.build_check_type
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.build_check_type.blueprint_ghost)
---@class defines.build_check_type.blueprint_ghost : defines.build_check_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.build_check_type.ghost_revive)
---@class defines.build_check_type.ghost_revive : defines.build_check_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.build_check_type.manual)
---@class defines.build_check_type.manual : defines.build_check_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.build_check_type.manual_ghost)
---@class defines.build_check_type.manual_ghost : defines.build_check_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.build_check_type.script)
---@class defines.build_check_type.script : defines.build_check_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.build_check_type.script_ghost)
---@class defines.build_check_type.script_ghost : defines.build_check_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.build_check_type)
---@class defines.build_check_type.__index
---@field blueprint_ghost defines.build_check_type.blueprint_ghost 
---@field ghost_revive defines.build_check_type.ghost_revive 
---@field manual defines.build_check_type.manual 
---@field manual_ghost defines.build_check_type.manual_ghost 
---@field script defines.build_check_type.script 
---@field script_ghost defines.build_check_type.script_ghost 
defines.build_check_type={}
---State of a chain signal.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.chain_signal_state)
---@class defines.chain_signal_state
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.chain_signal_state.all_open)
---@class defines.chain_signal_state.all_open : defines.chain_signal_state 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.chain_signal_state.none)
---@class defines.chain_signal_state.none : defines.chain_signal_state 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.chain_signal_state.none_open)
---@class defines.chain_signal_state.none_open : defines.chain_signal_state 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.chain_signal_state.partially_open)
---@class defines.chain_signal_state.partially_open : defines.chain_signal_state 
---State of a chain signal.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.chain_signal_state)
---@class defines.chain_signal_state.__index
---@field all_open defines.chain_signal_state.all_open 
---@field none defines.chain_signal_state.none 
---@field none_open defines.chain_signal_state.none_open 
---@field partially_open defines.chain_signal_state.partially_open 
defines.chain_signal_state={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.chunk_generated_status)
---@class defines.chunk_generated_status
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.chunk_generated_status.basic_tiles)
---@class defines.chunk_generated_status.basic_tiles : defines.chunk_generated_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.chunk_generated_status.corrected_tiles)
---@class defines.chunk_generated_status.corrected_tiles : defines.chunk_generated_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.chunk_generated_status.custom_tiles)
---@class defines.chunk_generated_status.custom_tiles : defines.chunk_generated_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.chunk_generated_status.entities)
---@class defines.chunk_generated_status.entities : defines.chunk_generated_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.chunk_generated_status.nothing)
---@class defines.chunk_generated_status.nothing : defines.chunk_generated_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.chunk_generated_status.tiles)
---@class defines.chunk_generated_status.tiles : defines.chunk_generated_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.chunk_generated_status)
---@class defines.chunk_generated_status.__index
---@field basic_tiles defines.chunk_generated_status.basic_tiles 
---@field corrected_tiles defines.chunk_generated_status.corrected_tiles 
---@field custom_tiles defines.chunk_generated_status.custom_tiles 
---@field entities defines.chunk_generated_status.entities 
---@field nothing defines.chunk_generated_status.nothing 
---@field tiles defines.chunk_generated_status.tiles 
defines.chunk_generated_status={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_condition_index)
---@class defines.circuit_condition_index
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_condition_index.arithmetic_combinator)
---@class defines.circuit_condition_index.arithmetic_combinator : defines.circuit_condition_index 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_condition_index.constant_combinator)
---@class defines.circuit_condition_index.constant_combinator : defines.circuit_condition_index 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_condition_index.decider_combinator)
---@class defines.circuit_condition_index.decider_combinator : defines.circuit_condition_index 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_condition_index.inserter_circuit)
---@class defines.circuit_condition_index.inserter_circuit : defines.circuit_condition_index 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_condition_index.inserter_logistic)
---@class defines.circuit_condition_index.inserter_logistic : defines.circuit_condition_index 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_condition_index.lamp)
---@class defines.circuit_condition_index.lamp : defines.circuit_condition_index 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_condition_index.offshore_pump)
---@class defines.circuit_condition_index.offshore_pump : defines.circuit_condition_index 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_condition_index.pump)
---@class defines.circuit_condition_index.pump : defines.circuit_condition_index 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_condition_index)
---@class defines.circuit_condition_index.__index
---@field arithmetic_combinator defines.circuit_condition_index.arithmetic_combinator 
---@field constant_combinator defines.circuit_condition_index.constant_combinator 
---@field decider_combinator defines.circuit_condition_index.decider_combinator 
---@field inserter_circuit defines.circuit_condition_index.inserter_circuit 
---@field inserter_logistic defines.circuit_condition_index.inserter_logistic 
---@field lamp defines.circuit_condition_index.lamp 
---@field offshore_pump defines.circuit_condition_index.offshore_pump 
---@field pump defines.circuit_condition_index.pump 
defines.circuit_condition_index={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_connector_id)
---@class defines.circuit_connector_id
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_connector_id.accumulator)
---@class defines.circuit_connector_id.accumulator : defines.circuit_connector_id 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_connector_id.combinator_input)
---@class defines.circuit_connector_id.combinator_input : defines.circuit_connector_id 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_connector_id.combinator_output)
---@class defines.circuit_connector_id.combinator_output : defines.circuit_connector_id 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_connector_id.constant_combinator)
---@class defines.circuit_connector_id.constant_combinator : defines.circuit_connector_id 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_connector_id.container)
---@class defines.circuit_connector_id.container : defines.circuit_connector_id 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_connector_id.electric_pole)
---@class defines.circuit_connector_id.electric_pole : defines.circuit_connector_id 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_connector_id.inserter)
---@class defines.circuit_connector_id.inserter : defines.circuit_connector_id 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_connector_id.lamp)
---@class defines.circuit_connector_id.lamp : defines.circuit_connector_id 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_connector_id.linked_container)
---@class defines.circuit_connector_id.linked_container : defines.circuit_connector_id 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_connector_id.offshore_pump)
---@class defines.circuit_connector_id.offshore_pump : defines.circuit_connector_id 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_connector_id.programmable_speaker)
---@class defines.circuit_connector_id.programmable_speaker : defines.circuit_connector_id 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_connector_id.pump)
---@class defines.circuit_connector_id.pump : defines.circuit_connector_id 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_connector_id.rail_chain_signal)
---@class defines.circuit_connector_id.rail_chain_signal : defines.circuit_connector_id 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_connector_id.rail_signal)
---@class defines.circuit_connector_id.rail_signal : defines.circuit_connector_id 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_connector_id.roboport)
---@class defines.circuit_connector_id.roboport : defines.circuit_connector_id 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_connector_id.storage_tank)
---@class defines.circuit_connector_id.storage_tank : defines.circuit_connector_id 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_connector_id.wall)
---@class defines.circuit_connector_id.wall : defines.circuit_connector_id 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.circuit_connector_id)
---@class defines.circuit_connector_id.__index
---@field accumulator defines.circuit_connector_id.accumulator 
---@field combinator_input defines.circuit_connector_id.combinator_input 
---@field combinator_output defines.circuit_connector_id.combinator_output 
---@field constant_combinator defines.circuit_connector_id.constant_combinator 
---@field container defines.circuit_connector_id.container 
---@field electric_pole defines.circuit_connector_id.electric_pole 
---@field inserter defines.circuit_connector_id.inserter 
---@field lamp defines.circuit_connector_id.lamp 
---@field linked_container defines.circuit_connector_id.linked_container 
---@field offshore_pump defines.circuit_connector_id.offshore_pump 
---@field programmable_speaker defines.circuit_connector_id.programmable_speaker 
---@field pump defines.circuit_connector_id.pump 
---@field rail_chain_signal defines.circuit_connector_id.rail_chain_signal 
---@field rail_signal defines.circuit_connector_id.rail_signal 
---@field roboport defines.circuit_connector_id.roboport 
---@field storage_tank defines.circuit_connector_id.storage_tank 
---@field wall defines.circuit_connector_id.wall 
defines.circuit_connector_id={}
---Command given to units describing what they should do.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.command)
---@class defines.command
---Attack another entity.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.command.attack)
---@class defines.command.attack : defines.command 
---Go to a place and attack what you see.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.command.attack_area)
---@class defines.command.attack_area : defines.command 
---Go to a position and build a base there.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.command.build_base)
---@class defines.command.build_base : defines.command 
---Chain commands together, see [defines.compound_command](https://lua-api.factorio.com/latest/defines.html#defines.compound_command).
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.command.compound)
---@class defines.command.compound : defines.command 
---Flee from another entity.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.command.flee)
---@class defines.command.flee : defines.command 
---Go to a specific position.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.command.go_to_location)
---@class defines.command.go_to_location : defines.command 
---Do what your group wants you to do.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.command.group)
---@class defines.command.group : defines.command 
---Stop moving and stay where you are.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.command.stop)
---@class defines.command.stop : defines.command 
---Chill.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.command.wander)
---@class defines.command.wander : defines.command 
---Command given to units describing what they should do.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.command)
---@class defines.command.__index
---@field attack defines.command.attack 
---@field attack_area defines.command.attack_area 
---@field build_base defines.command.build_base 
---@field compound defines.command.compound 
---@field flee defines.command.flee 
---@field go_to_location defines.command.go_to_location 
---@field group defines.command.group 
---@field stop defines.command.stop 
---@field wander defines.command.wander 
defines.command={}
---How commands are joined together in a compound command (see [defines.command.compound](https://lua-api.factorio.com/latest/defines.html#defines.command.compound)).
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.compound_command)
---@class defines.compound_command
---Fail on first failure. Only succeeds if all commands (executed one after another) succeed.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.compound_command.logical_and)
---@class defines.compound_command.logical_and : defines.compound_command 
---Succeed on first success. Only fails if all commands (executed one after another) fail.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.compound_command.logical_or)
---@class defines.compound_command.logical_or : defines.compound_command 
---Execute all commands in sequence and fail or succeed depending on the return status of the last command.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.compound_command.return_last)
---@class defines.compound_command.return_last : defines.compound_command 
---How commands are joined together in a compound command (see [defines.command.compound](https://lua-api.factorio.com/latest/defines.html#defines.command.compound)).
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.compound_command)
---@class defines.compound_command.__index
---@field logical_and defines.compound_command.logical_and 
---@field logical_or defines.compound_command.logical_or 
---@field return_last defines.compound_command.return_last 
defines.compound_command={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior)
---@class defines.control_behavior
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior)
---@class defines.control_behavior.__index
defines.control_behavior={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.inserter)
---@class defines.control_behavior.inserter
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.inserter)
---@class defines.control_behavior.inserter.__index
defines.control_behavior.inserter={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.inserter.circuit_mode_of_operation)
---@class defines.control_behavior.inserter.circuit_mode_of_operation
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.inserter.circuit_mode_of_operation.enable_disable)
---@class defines.control_behavior.inserter.circuit_mode_of_operation.enable_disable : defines.control_behavior.inserter.circuit_mode_of_operation 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.inserter.circuit_mode_of_operation.none)
---@class defines.control_behavior.inserter.circuit_mode_of_operation.none : defines.control_behavior.inserter.circuit_mode_of_operation 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.inserter.circuit_mode_of_operation.read_hand_contents)
---@class defines.control_behavior.inserter.circuit_mode_of_operation.read_hand_contents : defines.control_behavior.inserter.circuit_mode_of_operation 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.inserter.circuit_mode_of_operation.set_filters)
---@class defines.control_behavior.inserter.circuit_mode_of_operation.set_filters : defines.control_behavior.inserter.circuit_mode_of_operation 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.inserter.circuit_mode_of_operation.set_stack_size)
---@class defines.control_behavior.inserter.circuit_mode_of_operation.set_stack_size : defines.control_behavior.inserter.circuit_mode_of_operation 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.inserter.circuit_mode_of_operation)
---@class defines.control_behavior.inserter.circuit_mode_of_operation.__index
---@field enable_disable defines.control_behavior.inserter.circuit_mode_of_operation.enable_disable 
---@field none defines.control_behavior.inserter.circuit_mode_of_operation.none 
---@field read_hand_contents defines.control_behavior.inserter.circuit_mode_of_operation.read_hand_contents 
---@field set_filters defines.control_behavior.inserter.circuit_mode_of_operation.set_filters 
---@field set_stack_size defines.control_behavior.inserter.circuit_mode_of_operation.set_stack_size 
defines.control_behavior.inserter.circuit_mode_of_operation={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.inserter.hand_read_mode)
---@class defines.control_behavior.inserter.hand_read_mode
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.inserter.hand_read_mode.hold)
---@class defines.control_behavior.inserter.hand_read_mode.hold : defines.control_behavior.inserter.hand_read_mode 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.inserter.hand_read_mode.pulse)
---@class defines.control_behavior.inserter.hand_read_mode.pulse : defines.control_behavior.inserter.hand_read_mode 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.inserter.hand_read_mode)
---@class defines.control_behavior.inserter.hand_read_mode.__index
---@field hold defines.control_behavior.inserter.hand_read_mode.hold 
---@field pulse defines.control_behavior.inserter.hand_read_mode.pulse 
defines.control_behavior.inserter.hand_read_mode={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.lamp)
---@class defines.control_behavior.lamp
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.lamp)
---@class defines.control_behavior.lamp.__index
defines.control_behavior.lamp={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.lamp.circuit_mode_of_operation)
---@class defines.control_behavior.lamp.circuit_mode_of_operation
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.lamp.circuit_mode_of_operation.use_colors)
---@class defines.control_behavior.lamp.circuit_mode_of_operation.use_colors : defines.control_behavior.lamp.circuit_mode_of_operation 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.lamp.circuit_mode_of_operation)
---@class defines.control_behavior.lamp.circuit_mode_of_operation.__index
---@field use_colors defines.control_behavior.lamp.circuit_mode_of_operation.use_colors 
defines.control_behavior.lamp.circuit_mode_of_operation={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.logistic_container)
---@class defines.control_behavior.logistic_container
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.logistic_container)
---@class defines.control_behavior.logistic_container.__index
defines.control_behavior.logistic_container={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.logistic_container.circuit_mode_of_operation)
---@class defines.control_behavior.logistic_container.circuit_mode_of_operation
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.logistic_container.circuit_mode_of_operation.send_contents)
---@class defines.control_behavior.logistic_container.circuit_mode_of_operation.send_contents : defines.control_behavior.logistic_container.circuit_mode_of_operation 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.logistic_container.circuit_mode_of_operation.set_requests)
---@class defines.control_behavior.logistic_container.circuit_mode_of_operation.set_requests : defines.control_behavior.logistic_container.circuit_mode_of_operation 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.logistic_container.circuit_mode_of_operation)
---@class defines.control_behavior.logistic_container.circuit_mode_of_operation.__index
---@field send_contents defines.control_behavior.logistic_container.circuit_mode_of_operation.send_contents 
---@field set_requests defines.control_behavior.logistic_container.circuit_mode_of_operation.set_requests 
defines.control_behavior.logistic_container.circuit_mode_of_operation={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.mining_drill)
---@class defines.control_behavior.mining_drill
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.mining_drill)
---@class defines.control_behavior.mining_drill.__index
defines.control_behavior.mining_drill={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.mining_drill.resource_read_mode)
---@class defines.control_behavior.mining_drill.resource_read_mode
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.mining_drill.resource_read_mode.entire_patch)
---@class defines.control_behavior.mining_drill.resource_read_mode.entire_patch : defines.control_behavior.mining_drill.resource_read_mode 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.mining_drill.resource_read_mode.this_miner)
---@class defines.control_behavior.mining_drill.resource_read_mode.this_miner : defines.control_behavior.mining_drill.resource_read_mode 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.mining_drill.resource_read_mode)
---@class defines.control_behavior.mining_drill.resource_read_mode.__index
---@field entire_patch defines.control_behavior.mining_drill.resource_read_mode.entire_patch 
---@field this_miner defines.control_behavior.mining_drill.resource_read_mode.this_miner 
defines.control_behavior.mining_drill.resource_read_mode={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.transport_belt)
---@class defines.control_behavior.transport_belt
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.transport_belt)
---@class defines.control_behavior.transport_belt.__index
defines.control_behavior.transport_belt={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.transport_belt.content_read_mode)
---@class defines.control_behavior.transport_belt.content_read_mode
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.transport_belt.content_read_mode.hold)
---@class defines.control_behavior.transport_belt.content_read_mode.hold : defines.control_behavior.transport_belt.content_read_mode 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.transport_belt.content_read_mode.pulse)
---@class defines.control_behavior.transport_belt.content_read_mode.pulse : defines.control_behavior.transport_belt.content_read_mode 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.transport_belt.content_read_mode)
---@class defines.control_behavior.transport_belt.content_read_mode.__index
---@field hold defines.control_behavior.transport_belt.content_read_mode.hold 
---@field pulse defines.control_behavior.transport_belt.content_read_mode.pulse 
defines.control_behavior.transport_belt.content_read_mode={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.type)
---@class defines.control_behavior.type
---[LuaAccumulatorControlBehavior](https://lua-api.factorio.com/latest/LuaAccumulatorControlBehavior.html)
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.type.accumulator)
---@class defines.control_behavior.type.accumulator : defines.control_behavior.type 
---[LuaArithmeticCombinatorControlBehavior](https://lua-api.factorio.com/latest/LuaArithmeticCombinatorControlBehavior.html)
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.type.arithmetic_combinator)
---@class defines.control_behavior.type.arithmetic_combinator : defines.control_behavior.type 
---[LuaConstantCombinatorControlBehavior](https://lua-api.factorio.com/latest/LuaConstantCombinatorControlBehavior.html)
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.type.constant_combinator)
---@class defines.control_behavior.type.constant_combinator : defines.control_behavior.type 
---[LuaContainerControlBehavior](https://lua-api.factorio.com/latest/LuaContainerControlBehavior.html)
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.type.container)
---@class defines.control_behavior.type.container : defines.control_behavior.type 
---[LuaDeciderCombinatorControlBehavior](https://lua-api.factorio.com/latest/LuaDeciderCombinatorControlBehavior.html)
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.type.decider_combinator)
---@class defines.control_behavior.type.decider_combinator : defines.control_behavior.type 
---[LuaGenericOnOffControlBehavior](https://lua-api.factorio.com/latest/LuaGenericOnOffControlBehavior.html)
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.type.generic_on_off)
---@class defines.control_behavior.type.generic_on_off : defines.control_behavior.type 
---[LuaInserterControlBehavior](https://lua-api.factorio.com/latest/LuaInserterControlBehavior.html)
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.type.inserter)
---@class defines.control_behavior.type.inserter : defines.control_behavior.type 
---[LuaLampControlBehavior](https://lua-api.factorio.com/latest/LuaLampControlBehavior.html)
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.type.lamp)
---@class defines.control_behavior.type.lamp : defines.control_behavior.type 
---[LuaLogisticContainerControlBehavior](https://lua-api.factorio.com/latest/LuaLogisticContainerControlBehavior.html)
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.type.logistic_container)
---@class defines.control_behavior.type.logistic_container : defines.control_behavior.type 
---[LuaMiningDrillControlBehavior](https://lua-api.factorio.com/latest/LuaMiningDrillControlBehavior.html)
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.type.mining_drill)
---@class defines.control_behavior.type.mining_drill : defines.control_behavior.type 
---[LuaProgrammableSpeakerControlBehavior](https://lua-api.factorio.com/latest/LuaProgrammableSpeakerControlBehavior.html)
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.type.programmable_speaker)
---@class defines.control_behavior.type.programmable_speaker : defines.control_behavior.type 
---[LuaRailChainSignalControlBehavior](https://lua-api.factorio.com/latest/LuaRailChainSignalControlBehavior.html)
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.type.rail_chain_signal)
---@class defines.control_behavior.type.rail_chain_signal : defines.control_behavior.type 
---[LuaRailSignalControlBehavior](https://lua-api.factorio.com/latest/LuaRailSignalControlBehavior.html)
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.type.rail_signal)
---@class defines.control_behavior.type.rail_signal : defines.control_behavior.type 
---[LuaRoboportControlBehavior](https://lua-api.factorio.com/latest/LuaRoboportControlBehavior.html)
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.type.roboport)
---@class defines.control_behavior.type.roboport : defines.control_behavior.type 
---[LuaStorageTankControlBehavior](https://lua-api.factorio.com/latest/LuaStorageTankControlBehavior.html)
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.type.storage_tank)
---@class defines.control_behavior.type.storage_tank : defines.control_behavior.type 
---[LuaTrainStopControlBehavior](https://lua-api.factorio.com/latest/LuaTrainStopControlBehavior.html)
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.type.train_stop)
---@class defines.control_behavior.type.train_stop : defines.control_behavior.type 
---[LuaTransportBeltControlBehavior](https://lua-api.factorio.com/latest/LuaTransportBeltControlBehavior.html)
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.type.transport_belt)
---@class defines.control_behavior.type.transport_belt : defines.control_behavior.type 
---[LuaWallControlBehavior](https://lua-api.factorio.com/latest/LuaWallControlBehavior.html)
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.type.wall)
---@class defines.control_behavior.type.wall : defines.control_behavior.type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.control_behavior.type)
---@class defines.control_behavior.type.__index
---@field accumulator defines.control_behavior.type.accumulator 
---@field arithmetic_combinator defines.control_behavior.type.arithmetic_combinator 
---@field constant_combinator defines.control_behavior.type.constant_combinator 
---@field container defines.control_behavior.type.container 
---@field decider_combinator defines.control_behavior.type.decider_combinator 
---@field generic_on_off defines.control_behavior.type.generic_on_off 
---@field inserter defines.control_behavior.type.inserter 
---@field lamp defines.control_behavior.type.lamp 
---@field logistic_container defines.control_behavior.type.logistic_container 
---@field mining_drill defines.control_behavior.type.mining_drill 
---@field programmable_speaker defines.control_behavior.type.programmable_speaker 
---@field rail_chain_signal defines.control_behavior.type.rail_chain_signal 
---@field rail_signal defines.control_behavior.type.rail_signal 
---@field roboport defines.control_behavior.type.roboport 
---@field storage_tank defines.control_behavior.type.storage_tank 
---@field train_stop defines.control_behavior.type.train_stop 
---@field transport_belt defines.control_behavior.type.transport_belt 
---@field wall defines.control_behavior.type.wall 
defines.control_behavior.type={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.controllers)
---@class defines.controllers
---The controller controls a character. This is the default controller in freeplay.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.controllers.character)
---@class defines.controllers.character : defines.controllers 
---The player can't interact with the world, and the camera pans around in a predefined manner.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.controllers.cutscene)
---@class defines.controllers.cutscene : defines.controllers 
---The Editor Controller near ultimate power to do almost anything in the game.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.controllers.editor)
---@class defines.controllers.editor : defines.controllers 
---Can't interact with the world, can only observe. Used in the multiplayer waiting-to-respawn screen.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.controllers.ghost)
---@class defines.controllers.ghost : defines.controllers 
---The controller isn't tied to a character. This is the default controller in sandbox.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.controllers.god)
---@class defines.controllers.god : defines.controllers 
---Can't change anything in the world but can view anything.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.controllers.spectator)
---@class defines.controllers.spectator : defines.controllers 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.controllers)
---@class defines.controllers.__index
---@field character defines.controllers.character 
---@field cutscene defines.controllers.cutscene 
---@field editor defines.controllers.editor 
---@field ghost defines.controllers.ghost 
---@field god defines.controllers.god 
---@field spectator defines.controllers.spectator 
defines.controllers={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.deconstruction_item)
---@class defines.deconstruction_item
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.deconstruction_item)
---@class defines.deconstruction_item.__index
defines.deconstruction_item={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.deconstruction_item.entity_filter_mode)
---@class defines.deconstruction_item.entity_filter_mode
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.deconstruction_item.entity_filter_mode.blacklist)
---@class defines.deconstruction_item.entity_filter_mode.blacklist : defines.deconstruction_item.entity_filter_mode 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.deconstruction_item.entity_filter_mode.whitelist)
---@class defines.deconstruction_item.entity_filter_mode.whitelist : defines.deconstruction_item.entity_filter_mode 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.deconstruction_item.entity_filter_mode)
---@class defines.deconstruction_item.entity_filter_mode.__index
---@field blacklist defines.deconstruction_item.entity_filter_mode.blacklist 
---@field whitelist defines.deconstruction_item.entity_filter_mode.whitelist 
defines.deconstruction_item.entity_filter_mode={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.deconstruction_item.tile_filter_mode)
---@class defines.deconstruction_item.tile_filter_mode
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.deconstruction_item.tile_filter_mode.blacklist)
---@class defines.deconstruction_item.tile_filter_mode.blacklist : defines.deconstruction_item.tile_filter_mode 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.deconstruction_item.tile_filter_mode.whitelist)
---@class defines.deconstruction_item.tile_filter_mode.whitelist : defines.deconstruction_item.tile_filter_mode 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.deconstruction_item.tile_filter_mode)
---@class defines.deconstruction_item.tile_filter_mode.__index
---@field blacklist defines.deconstruction_item.tile_filter_mode.blacklist 
---@field whitelist defines.deconstruction_item.tile_filter_mode.whitelist 
defines.deconstruction_item.tile_filter_mode={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.deconstruction_item.tile_selection_mode)
---@class defines.deconstruction_item.tile_selection_mode
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.deconstruction_item.tile_selection_mode.always)
---@class defines.deconstruction_item.tile_selection_mode.always : defines.deconstruction_item.tile_selection_mode 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.deconstruction_item.tile_selection_mode.never)
---@class defines.deconstruction_item.tile_selection_mode.never : defines.deconstruction_item.tile_selection_mode 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.deconstruction_item.tile_selection_mode.normal)
---@class defines.deconstruction_item.tile_selection_mode.normal : defines.deconstruction_item.tile_selection_mode 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.deconstruction_item.tile_selection_mode.only)
---@class defines.deconstruction_item.tile_selection_mode.only : defines.deconstruction_item.tile_selection_mode 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.deconstruction_item.tile_selection_mode)
---@class defines.deconstruction_item.tile_selection_mode.__index
---@field always defines.deconstruction_item.tile_selection_mode.always 
---@field never defines.deconstruction_item.tile_selection_mode.never 
---@field normal defines.deconstruction_item.tile_selection_mode.normal 
---@field only defines.deconstruction_item.tile_selection_mode.only 
defines.deconstruction_item.tile_selection_mode={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.difficulty)
---@class defines.difficulty
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.difficulty.easy)
---@class defines.difficulty.easy : defines.difficulty 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.difficulty.hard)
---@class defines.difficulty.hard : defines.difficulty 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.difficulty.normal)
---@class defines.difficulty.normal : defines.difficulty 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.difficulty)
---@class defines.difficulty.__index
---@field easy defines.difficulty.easy 
---@field hard defines.difficulty.hard 
---@field normal defines.difficulty.normal 
defines.difficulty={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.difficulty_settings)
---@class defines.difficulty_settings
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.difficulty_settings)
---@class defines.difficulty_settings.__index
defines.difficulty_settings={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.difficulty_settings.recipe_difficulty)
---@class defines.difficulty_settings.recipe_difficulty
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.difficulty_settings.recipe_difficulty.expensive)
---@class defines.difficulty_settings.recipe_difficulty.expensive : defines.difficulty_settings.recipe_difficulty 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.difficulty_settings.recipe_difficulty.normal)
---@class defines.difficulty_settings.recipe_difficulty.normal : defines.difficulty_settings.recipe_difficulty 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.difficulty_settings.recipe_difficulty)
---@class defines.difficulty_settings.recipe_difficulty.__index
---@field expensive defines.difficulty_settings.recipe_difficulty.expensive 
---@field normal defines.difficulty_settings.recipe_difficulty.normal 
defines.difficulty_settings.recipe_difficulty={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.difficulty_settings.technology_difficulty)
---@class defines.difficulty_settings.technology_difficulty
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.difficulty_settings.technology_difficulty.expensive)
---@class defines.difficulty_settings.technology_difficulty.expensive : defines.difficulty_settings.technology_difficulty 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.difficulty_settings.technology_difficulty.normal)
---@class defines.difficulty_settings.technology_difficulty.normal : defines.difficulty_settings.technology_difficulty 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.difficulty_settings.technology_difficulty)
---@class defines.difficulty_settings.technology_difficulty.__index
---@field expensive defines.difficulty_settings.technology_difficulty.expensive 
---@field normal defines.difficulty_settings.technology_difficulty.normal 
defines.difficulty_settings.technology_difficulty={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.direction)
---@class defines.direction
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.direction.east)
---@class defines.direction.east : defines.direction 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.direction.north)
---@class defines.direction.north : defines.direction 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.direction.northeast)
---@class defines.direction.northeast : defines.direction 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.direction.northwest)
---@class defines.direction.northwest : defines.direction 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.direction.south)
---@class defines.direction.south : defines.direction 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.direction.southeast)
---@class defines.direction.southeast : defines.direction 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.direction.southwest)
---@class defines.direction.southwest : defines.direction 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.direction.west)
---@class defines.direction.west : defines.direction 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.direction)
---@class defines.direction.__index
---@field east defines.direction.east 
---@field north defines.direction.north 
---@field northeast defines.direction.northeast 
---@field northwest defines.direction.northwest 
---@field south defines.direction.south 
---@field southeast defines.direction.southeast 
---@field southwest defines.direction.southwest 
---@field west defines.direction.west 
defines.direction={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.disconnect_reason)
---@class defines.disconnect_reason
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.disconnect_reason.afk)
---@class defines.disconnect_reason.afk : defines.disconnect_reason 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.disconnect_reason.banned)
---@class defines.disconnect_reason.banned : defines.disconnect_reason 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.disconnect_reason.cannot_keep_up)
---@class defines.disconnect_reason.cannot_keep_up : defines.disconnect_reason 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.disconnect_reason.desync_limit_reached)
---@class defines.disconnect_reason.desync_limit_reached : defines.disconnect_reason 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.disconnect_reason.dropped)
---@class defines.disconnect_reason.dropped : defines.disconnect_reason 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.disconnect_reason.kicked)
---@class defines.disconnect_reason.kicked : defines.disconnect_reason 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.disconnect_reason.kicked_and_deleted)
---@class defines.disconnect_reason.kicked_and_deleted : defines.disconnect_reason 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.disconnect_reason.quit)
---@class defines.disconnect_reason.quit : defines.disconnect_reason 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.disconnect_reason.reconnect)
---@class defines.disconnect_reason.reconnect : defines.disconnect_reason 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.disconnect_reason.switching_servers)
---@class defines.disconnect_reason.switching_servers : defines.disconnect_reason 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.disconnect_reason.wrong_input)
---@class defines.disconnect_reason.wrong_input : defines.disconnect_reason 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.disconnect_reason)
---@class defines.disconnect_reason.__index
---@field afk defines.disconnect_reason.afk 
---@field banned defines.disconnect_reason.banned 
---@field cannot_keep_up defines.disconnect_reason.cannot_keep_up 
---@field desync_limit_reached defines.disconnect_reason.desync_limit_reached 
---@field dropped defines.disconnect_reason.dropped 
---@field kicked defines.disconnect_reason.kicked 
---@field kicked_and_deleted defines.disconnect_reason.kicked_and_deleted 
---@field quit defines.disconnect_reason.quit 
---@field reconnect defines.disconnect_reason.reconnect 
---@field switching_servers defines.disconnect_reason.switching_servers 
---@field wrong_input defines.disconnect_reason.wrong_input 
defines.disconnect_reason={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.distraction)
---@class defines.distraction
---Attack closer enemy entities, including entities "built" by player (belts, inserters, chests).
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.distraction.by_anything)
---@class defines.distraction.by_anything : defines.distraction 
---Attack when attacked.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.distraction.by_damage)
---@class defines.distraction.by_damage : defines.distraction 
---Attack closer enemy entities with force.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.distraction.by_enemy)
---@class defines.distraction.by_enemy : defines.distraction 
---Perform command even if someone attacks the unit.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.distraction.none)
---@class defines.distraction.none : defines.distraction 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.distraction)
---@class defines.distraction.__index
---@field by_anything defines.distraction.by_anything 
---@field by_damage defines.distraction.by_damage 
---@field by_enemy defines.distraction.by_enemy 
---@field none defines.distraction.none 
defines.distraction={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status)
---@class defines.entity_status
---Used by rail signals.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.cant_divide_segments)
---@class defines.entity_status.cant_divide_segments : defines.entity_status 
---Used by accumulators.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.charging)
---@class defines.entity_status.charging : defines.entity_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.closed_by_circuit_network)
---@class defines.entity_status.closed_by_circuit_network : defines.entity_status 
---Used by constant combinators: Combinator is turned off via switch in GUI.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.disabled)
---@class defines.entity_status.disabled : defines.entity_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.disabled_by_control_behavior)
---@class defines.entity_status.disabled_by_control_behavior : defines.entity_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.disabled_by_script)
---@class defines.entity_status.disabled_by_script : defines.entity_status 
---Used by accumulators.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.discharging)
---@class defines.entity_status.discharging : defines.entity_status 
---Used by crafting machines.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.fluid_ingredient_shortage)
---@class defines.entity_status.fluid_ingredient_shortage : defines.entity_status 
---Used by crafting machines, boilers, burner energy sources and reactors: Reactor/burner has full burnt result inventory, boiler has full output fluidbox.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.full_output)
---@class defines.entity_status.full_output : defines.entity_status 
---Used by accumulators.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.fully_charged)
---@class defines.entity_status.fully_charged : defines.entity_status 
---Used by crafting machines.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.item_ingredient_shortage)
---@class defines.entity_status.item_ingredient_shortage : defines.entity_status 
---Used by the rocket silo.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.launching_rocket)
---@class defines.entity_status.launching_rocket : defines.entity_status 
---Used by boilers and fluid turrets: Boiler still has some fluid but is about to run out.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.low_input_fluid)
---@class defines.entity_status.low_input_fluid : defines.entity_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.low_power)
---@class defines.entity_status.low_power : defines.entity_status 
---Used by heat energy sources.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.low_temperature)
---@class defines.entity_status.low_temperature : defines.entity_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.marked_for_deconstruction)
---@class defines.entity_status.marked_for_deconstruction : defines.entity_status 
---Used by mining drills when the mining fluid is missing.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.missing_required_fluid)
---@class defines.entity_status.missing_required_fluid : defines.entity_status 
---Used by labs.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.missing_science_packs)
---@class defines.entity_status.missing_science_packs : defines.entity_status 
---Used by power switches.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.networks_connected)
---@class defines.entity_status.networks_connected : defines.entity_status 
---Used by power switches.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.networks_disconnected)
---@class defines.entity_status.networks_disconnected : defines.entity_status 
---Used by ammo turrets.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.no_ammo)
---@class defines.entity_status.no_ammo : defines.entity_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.no_fuel)
---@class defines.entity_status.no_fuel : defines.entity_status 
---Used by furnaces.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.no_ingredients)
---@class defines.entity_status.no_ingredients : defines.entity_status 
---Used by boilers, fluid turrets and fluid energy sources: Boiler has no fluid to work with.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.no_input_fluid)
---@class defines.entity_status.no_input_fluid : defines.entity_status 
---Used by mining drills.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.no_minable_resources)
---@class defines.entity_status.no_minable_resources : defines.entity_status 
---Used by beacons.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.no_modules_to_transmit)
---@class defines.entity_status.no_modules_to_transmit : defines.entity_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.no_power)
---@class defines.entity_status.no_power : defines.entity_status 
---Used by assembling machines.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.no_recipe)
---@class defines.entity_status.no_recipe : defines.entity_status 
---Used by labs.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.no_research_in_progress)
---@class defines.entity_status.no_research_in_progress : defines.entity_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.normal)
---@class defines.entity_status.normal : defines.entity_status 
---Used by rail signals.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.not_connected_to_rail)
---@class defines.entity_status.not_connected_to_rail : defines.entity_status 
---Used by generators and solar panels.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.not_plugged_in_electric_network)
---@class defines.entity_status.not_plugged_in_electric_network : defines.entity_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.opened_by_circuit_network)
---@class defines.entity_status.opened_by_circuit_network : defines.entity_status 
---Used by logistic containers.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.out_of_logistic_network)
---@class defines.entity_status.out_of_logistic_network : defines.entity_status 
---Used by the rocket silo.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.preparing_rocket_for_launch)
---@class defines.entity_status.preparing_rocket_for_launch : defines.entity_status 
---Used by roboports.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.recharging_after_power_outage)
---@class defines.entity_status.recharging_after_power_outage : defines.entity_status 
---Used by lamps.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.turned_off_during_daytime)
---@class defines.entity_status.turned_off_during_daytime : defines.entity_status 
---Used by inserters.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.waiting_for_source_items)
---@class defines.entity_status.waiting_for_source_items : defines.entity_status 
---Used by inserters and mining drills.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.waiting_for_space_in_destination)
---@class defines.entity_status.waiting_for_space_in_destination : defines.entity_status 
---Used by inserters targeting entity ghosts.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.waiting_for_target_to_be_built)
---@class defines.entity_status.waiting_for_target_to_be_built : defines.entity_status 
---Used by inserters targeting rails.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.waiting_for_train)
---@class defines.entity_status.waiting_for_train : defines.entity_status 
---Used by the rocket silo.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.waiting_to_launch_rocket)
---@class defines.entity_status.waiting_to_launch_rocket : defines.entity_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status.working)
---@class defines.entity_status.working : defines.entity_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.entity_status)
---@class defines.entity_status.__index
---@field cant_divide_segments defines.entity_status.cant_divide_segments 
---@field charging defines.entity_status.charging 
---@field closed_by_circuit_network defines.entity_status.closed_by_circuit_network 
---@field disabled defines.entity_status.disabled 
---@field disabled_by_control_behavior defines.entity_status.disabled_by_control_behavior 
---@field disabled_by_script defines.entity_status.disabled_by_script 
---@field discharging defines.entity_status.discharging 
---@field fluid_ingredient_shortage defines.entity_status.fluid_ingredient_shortage 
---@field full_output defines.entity_status.full_output 
---@field fully_charged defines.entity_status.fully_charged 
---@field item_ingredient_shortage defines.entity_status.item_ingredient_shortage 
---@field launching_rocket defines.entity_status.launching_rocket 
---@field low_input_fluid defines.entity_status.low_input_fluid 
---@field low_power defines.entity_status.low_power 
---@field low_temperature defines.entity_status.low_temperature 
---@field marked_for_deconstruction defines.entity_status.marked_for_deconstruction 
---@field missing_required_fluid defines.entity_status.missing_required_fluid 
---@field missing_science_packs defines.entity_status.missing_science_packs 
---@field networks_connected defines.entity_status.networks_connected 
---@field networks_disconnected defines.entity_status.networks_disconnected 
---@field no_ammo defines.entity_status.no_ammo 
---@field no_fuel defines.entity_status.no_fuel 
---@field no_ingredients defines.entity_status.no_ingredients 
---@field no_input_fluid defines.entity_status.no_input_fluid 
---@field no_minable_resources defines.entity_status.no_minable_resources 
---@field no_modules_to_transmit defines.entity_status.no_modules_to_transmit 
---@field no_power defines.entity_status.no_power 
---@field no_recipe defines.entity_status.no_recipe 
---@field no_research_in_progress defines.entity_status.no_research_in_progress 
---@field normal defines.entity_status.normal 
---@field not_connected_to_rail defines.entity_status.not_connected_to_rail 
---@field not_plugged_in_electric_network defines.entity_status.not_plugged_in_electric_network 
---@field opened_by_circuit_network defines.entity_status.opened_by_circuit_network 
---@field out_of_logistic_network defines.entity_status.out_of_logistic_network 
---@field preparing_rocket_for_launch defines.entity_status.preparing_rocket_for_launch 
---@field recharging_after_power_outage defines.entity_status.recharging_after_power_outage 
---@field turned_off_during_daytime defines.entity_status.turned_off_during_daytime 
---@field waiting_for_source_items defines.entity_status.waiting_for_source_items 
---@field waiting_for_space_in_destination defines.entity_status.waiting_for_space_in_destination 
---@field waiting_for_target_to_be_built defines.entity_status.waiting_for_target_to_be_built 
---@field waiting_for_train defines.entity_status.waiting_for_train 
---@field waiting_to_launch_rocket defines.entity_status.waiting_to_launch_rocket 
---@field working defines.entity_status.working 
defines.entity_status={}
---See the [events page](https://lua-api.factorio.com/latest/events.html) for more info on what events contain and when they get raised.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events)
---@class defines.events
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_ai_command_completed)
---@class defines.events.on_ai_command_completed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_area_cloned)
---@class defines.events.on_area_cloned : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_biter_base_built)
---@class defines.events.on_biter_base_built : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_brush_cloned)
---@class defines.events.on_brush_cloned : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_build_base_arrived)
---@class defines.events.on_build_base_arrived : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_built_entity)
---@class defines.events.on_built_entity : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_cancelled_deconstruction)
---@class defines.events.on_cancelled_deconstruction : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_cancelled_upgrade)
---@class defines.events.on_cancelled_upgrade : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_character_corpse_expired)
---@class defines.events.on_character_corpse_expired : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_chart_tag_added)
---@class defines.events.on_chart_tag_added : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_chart_tag_modified)
---@class defines.events.on_chart_tag_modified : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_chart_tag_removed)
---@class defines.events.on_chart_tag_removed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_chunk_charted)
---@class defines.events.on_chunk_charted : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_chunk_deleted)
---@class defines.events.on_chunk_deleted : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_chunk_generated)
---@class defines.events.on_chunk_generated : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_combat_robot_expired)
---@class defines.events.on_combat_robot_expired : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_console_chat)
---@class defines.events.on_console_chat : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_console_command)
---@class defines.events.on_console_command : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_cutscene_cancelled)
---@class defines.events.on_cutscene_cancelled : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_cutscene_waypoint_reached)
---@class defines.events.on_cutscene_waypoint_reached : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_difficulty_settings_changed)
---@class defines.events.on_difficulty_settings_changed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_entity_cloned)
---@class defines.events.on_entity_cloned : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_entity_damaged)
---@class defines.events.on_entity_damaged : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_entity_destroyed)
---@class defines.events.on_entity_destroyed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_entity_died)
---@class defines.events.on_entity_died : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_entity_logistic_slot_changed)
---@class defines.events.on_entity_logistic_slot_changed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_entity_renamed)
---@class defines.events.on_entity_renamed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_entity_settings_pasted)
---@class defines.events.on_entity_settings_pasted : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_entity_spawned)
---@class defines.events.on_entity_spawned : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_equipment_inserted)
---@class defines.events.on_equipment_inserted : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_equipment_removed)
---@class defines.events.on_equipment_removed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_force_cease_fire_changed)
---@class defines.events.on_force_cease_fire_changed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_force_created)
---@class defines.events.on_force_created : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_force_friends_changed)
---@class defines.events.on_force_friends_changed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_force_reset)
---@class defines.events.on_force_reset : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_forces_merged)
---@class defines.events.on_forces_merged : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_forces_merging)
---@class defines.events.on_forces_merging : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_game_created_from_scenario)
---@class defines.events.on_game_created_from_scenario : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_gui_checked_state_changed)
---@class defines.events.on_gui_checked_state_changed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_gui_click)
---@class defines.events.on_gui_click : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_gui_closed)
---@class defines.events.on_gui_closed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_gui_confirmed)
---@class defines.events.on_gui_confirmed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_gui_elem_changed)
---@class defines.events.on_gui_elem_changed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_gui_location_changed)
---@class defines.events.on_gui_location_changed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_gui_opened)
---@class defines.events.on_gui_opened : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_gui_selected_tab_changed)
---@class defines.events.on_gui_selected_tab_changed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_gui_selection_state_changed)
---@class defines.events.on_gui_selection_state_changed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_gui_switch_state_changed)
---@class defines.events.on_gui_switch_state_changed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_gui_text_changed)
---@class defines.events.on_gui_text_changed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_gui_value_changed)
---@class defines.events.on_gui_value_changed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_land_mine_armed)
---@class defines.events.on_land_mine_armed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_lua_shortcut)
---@class defines.events.on_lua_shortcut : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_marked_for_deconstruction)
---@class defines.events.on_marked_for_deconstruction : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_marked_for_upgrade)
---@class defines.events.on_marked_for_upgrade : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_market_item_purchased)
---@class defines.events.on_market_item_purchased : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_mod_item_opened)
---@class defines.events.on_mod_item_opened : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_permission_group_added)
---@class defines.events.on_permission_group_added : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_permission_group_deleted)
---@class defines.events.on_permission_group_deleted : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_permission_group_edited)
---@class defines.events.on_permission_group_edited : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_permission_string_imported)
---@class defines.events.on_permission_string_imported : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_picked_up_item)
---@class defines.events.on_picked_up_item : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_alt_selected_area)
---@class defines.events.on_player_alt_selected_area : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_ammo_inventory_changed)
---@class defines.events.on_player_ammo_inventory_changed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_armor_inventory_changed)
---@class defines.events.on_player_armor_inventory_changed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_banned)
---@class defines.events.on_player_banned : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_built_tile)
---@class defines.events.on_player_built_tile : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_cancelled_crafting)
---@class defines.events.on_player_cancelled_crafting : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_changed_force)
---@class defines.events.on_player_changed_force : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_changed_position)
---@class defines.events.on_player_changed_position : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_changed_surface)
---@class defines.events.on_player_changed_surface : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_cheat_mode_disabled)
---@class defines.events.on_player_cheat_mode_disabled : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_cheat_mode_enabled)
---@class defines.events.on_player_cheat_mode_enabled : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_clicked_gps_tag)
---@class defines.events.on_player_clicked_gps_tag : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_configured_blueprint)
---@class defines.events.on_player_configured_blueprint : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_configured_spider_remote)
---@class defines.events.on_player_configured_spider_remote : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_crafted_item)
---@class defines.events.on_player_crafted_item : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_created)
---@class defines.events.on_player_created : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_cursor_stack_changed)
---@class defines.events.on_player_cursor_stack_changed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_deconstructed_area)
---@class defines.events.on_player_deconstructed_area : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_demoted)
---@class defines.events.on_player_demoted : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_died)
---@class defines.events.on_player_died : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_display_resolution_changed)
---@class defines.events.on_player_display_resolution_changed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_display_scale_changed)
---@class defines.events.on_player_display_scale_changed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_driving_changed_state)
---@class defines.events.on_player_driving_changed_state : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_dropped_item)
---@class defines.events.on_player_dropped_item : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_fast_transferred)
---@class defines.events.on_player_fast_transferred : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_flushed_fluid)
---@class defines.events.on_player_flushed_fluid : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_gun_inventory_changed)
---@class defines.events.on_player_gun_inventory_changed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_joined_game)
---@class defines.events.on_player_joined_game : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_kicked)
---@class defines.events.on_player_kicked : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_left_game)
---@class defines.events.on_player_left_game : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_main_inventory_changed)
---@class defines.events.on_player_main_inventory_changed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_mined_entity)
---@class defines.events.on_player_mined_entity : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_mined_item)
---@class defines.events.on_player_mined_item : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_mined_tile)
---@class defines.events.on_player_mined_tile : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_muted)
---@class defines.events.on_player_muted : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_pipette)
---@class defines.events.on_player_pipette : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_placed_equipment)
---@class defines.events.on_player_placed_equipment : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_promoted)
---@class defines.events.on_player_promoted : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_removed)
---@class defines.events.on_player_removed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_removed_equipment)
---@class defines.events.on_player_removed_equipment : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_repaired_entity)
---@class defines.events.on_player_repaired_entity : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_respawned)
---@class defines.events.on_player_respawned : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_reverse_selected_area)
---@class defines.events.on_player_reverse_selected_area : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_rotated_entity)
---@class defines.events.on_player_rotated_entity : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_selected_area)
---@class defines.events.on_player_selected_area : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_set_quick_bar_slot)
---@class defines.events.on_player_set_quick_bar_slot : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_setup_blueprint)
---@class defines.events.on_player_setup_blueprint : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_toggled_alt_mode)
---@class defines.events.on_player_toggled_alt_mode : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_toggled_map_editor)
---@class defines.events.on_player_toggled_map_editor : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_trash_inventory_changed)
---@class defines.events.on_player_trash_inventory_changed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_unbanned)
---@class defines.events.on_player_unbanned : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_unmuted)
---@class defines.events.on_player_unmuted : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_used_capsule)
---@class defines.events.on_player_used_capsule : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_player_used_spider_remote)
---@class defines.events.on_player_used_spider_remote : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_post_entity_died)
---@class defines.events.on_post_entity_died : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_pre_build)
---@class defines.events.on_pre_build : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_pre_chunk_deleted)
---@class defines.events.on_pre_chunk_deleted : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_pre_entity_settings_pasted)
---@class defines.events.on_pre_entity_settings_pasted : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_pre_ghost_deconstructed)
---@class defines.events.on_pre_ghost_deconstructed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_pre_ghost_upgraded)
---@class defines.events.on_pre_ghost_upgraded : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_pre_permission_group_deleted)
---@class defines.events.on_pre_permission_group_deleted : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_pre_permission_string_imported)
---@class defines.events.on_pre_permission_string_imported : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_pre_player_crafted_item)
---@class defines.events.on_pre_player_crafted_item : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_pre_player_died)
---@class defines.events.on_pre_player_died : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_pre_player_left_game)
---@class defines.events.on_pre_player_left_game : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_pre_player_mined_item)
---@class defines.events.on_pre_player_mined_item : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_pre_player_removed)
---@class defines.events.on_pre_player_removed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_pre_player_toggled_map_editor)
---@class defines.events.on_pre_player_toggled_map_editor : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_pre_robot_exploded_cliff)
---@class defines.events.on_pre_robot_exploded_cliff : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_pre_script_inventory_resized)
---@class defines.events.on_pre_script_inventory_resized : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_pre_surface_cleared)
---@class defines.events.on_pre_surface_cleared : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_pre_surface_deleted)
---@class defines.events.on_pre_surface_deleted : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_research_cancelled)
---@class defines.events.on_research_cancelled : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_research_finished)
---@class defines.events.on_research_finished : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_research_reversed)
---@class defines.events.on_research_reversed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_research_started)
---@class defines.events.on_research_started : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_resource_depleted)
---@class defines.events.on_resource_depleted : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_robot_built_entity)
---@class defines.events.on_robot_built_entity : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_robot_built_tile)
---@class defines.events.on_robot_built_tile : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_robot_exploded_cliff)
---@class defines.events.on_robot_exploded_cliff : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_robot_mined)
---@class defines.events.on_robot_mined : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_robot_mined_entity)
---@class defines.events.on_robot_mined_entity : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_robot_mined_tile)
---@class defines.events.on_robot_mined_tile : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_robot_pre_mined)
---@class defines.events.on_robot_pre_mined : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_rocket_launch_ordered)
---@class defines.events.on_rocket_launch_ordered : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_rocket_launched)
---@class defines.events.on_rocket_launched : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_runtime_mod_setting_changed)
---@class defines.events.on_runtime_mod_setting_changed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_script_inventory_resized)
---@class defines.events.on_script_inventory_resized : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_script_path_request_finished)
---@class defines.events.on_script_path_request_finished : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_script_trigger_effect)
---@class defines.events.on_script_trigger_effect : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_sector_scanned)
---@class defines.events.on_sector_scanned : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_selected_entity_changed)
---@class defines.events.on_selected_entity_changed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_spider_command_completed)
---@class defines.events.on_spider_command_completed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_string_translated)
---@class defines.events.on_string_translated : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_surface_cleared)
---@class defines.events.on_surface_cleared : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_surface_created)
---@class defines.events.on_surface_created : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_surface_deleted)
---@class defines.events.on_surface_deleted : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_surface_imported)
---@class defines.events.on_surface_imported : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_surface_renamed)
---@class defines.events.on_surface_renamed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_technology_effects_reset)
---@class defines.events.on_technology_effects_reset : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_tick)
---@class defines.events.on_tick : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_train_changed_state)
---@class defines.events.on_train_changed_state : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_train_created)
---@class defines.events.on_train_created : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_train_schedule_changed)
---@class defines.events.on_train_schedule_changed : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_trigger_created_entity)
---@class defines.events.on_trigger_created_entity : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_trigger_fired_artillery)
---@class defines.events.on_trigger_fired_artillery : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_unit_added_to_group)
---@class defines.events.on_unit_added_to_group : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_unit_group_created)
---@class defines.events.on_unit_group_created : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_unit_group_finished_gathering)
---@class defines.events.on_unit_group_finished_gathering : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_unit_removed_from_group)
---@class defines.events.on_unit_removed_from_group : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.on_worker_robot_expired)
---@class defines.events.on_worker_robot_expired : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.script_raised_built)
---@class defines.events.script_raised_built : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.script_raised_destroy)
---@class defines.events.script_raised_destroy : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.script_raised_revive)
---@class defines.events.script_raised_revive : defines.events 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events.script_raised_set_tiles)
---@class defines.events.script_raised_set_tiles : defines.events 
---See the [events page](https://lua-api.factorio.com/latest/events.html) for more info on what events contain and when they get raised.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.events)
---@class defines.events.__index
---@field on_ai_command_completed defines.events.on_ai_command_completed 
---@field on_area_cloned defines.events.on_area_cloned 
---@field on_biter_base_built defines.events.on_biter_base_built 
---@field on_brush_cloned defines.events.on_brush_cloned 
---@field on_build_base_arrived defines.events.on_build_base_arrived 
---@field on_built_entity defines.events.on_built_entity 
---@field on_cancelled_deconstruction defines.events.on_cancelled_deconstruction 
---@field on_cancelled_upgrade defines.events.on_cancelled_upgrade 
---@field on_character_corpse_expired defines.events.on_character_corpse_expired 
---@field on_chart_tag_added defines.events.on_chart_tag_added 
---@field on_chart_tag_modified defines.events.on_chart_tag_modified 
---@field on_chart_tag_removed defines.events.on_chart_tag_removed 
---@field on_chunk_charted defines.events.on_chunk_charted 
---@field on_chunk_deleted defines.events.on_chunk_deleted 
---@field on_chunk_generated defines.events.on_chunk_generated 
---@field on_combat_robot_expired defines.events.on_combat_robot_expired 
---@field on_console_chat defines.events.on_console_chat 
---@field on_console_command defines.events.on_console_command 
---@field on_cutscene_cancelled defines.events.on_cutscene_cancelled 
---@field on_cutscene_waypoint_reached defines.events.on_cutscene_waypoint_reached 
---@field on_difficulty_settings_changed defines.events.on_difficulty_settings_changed 
---@field on_entity_cloned defines.events.on_entity_cloned 
---@field on_entity_damaged defines.events.on_entity_damaged 
---@field on_entity_destroyed defines.events.on_entity_destroyed 
---@field on_entity_died defines.events.on_entity_died 
---@field on_entity_logistic_slot_changed defines.events.on_entity_logistic_slot_changed 
---@field on_entity_renamed defines.events.on_entity_renamed 
---@field on_entity_settings_pasted defines.events.on_entity_settings_pasted 
---@field on_entity_spawned defines.events.on_entity_spawned 
---@field on_equipment_inserted defines.events.on_equipment_inserted 
---@field on_equipment_removed defines.events.on_equipment_removed 
---@field on_force_cease_fire_changed defines.events.on_force_cease_fire_changed 
---@field on_force_created defines.events.on_force_created 
---@field on_force_friends_changed defines.events.on_force_friends_changed 
---@field on_force_reset defines.events.on_force_reset 
---@field on_forces_merged defines.events.on_forces_merged 
---@field on_forces_merging defines.events.on_forces_merging 
---@field on_game_created_from_scenario defines.events.on_game_created_from_scenario 
---@field on_gui_checked_state_changed defines.events.on_gui_checked_state_changed 
---@field on_gui_click defines.events.on_gui_click 
---@field on_gui_closed defines.events.on_gui_closed 
---@field on_gui_confirmed defines.events.on_gui_confirmed 
---@field on_gui_elem_changed defines.events.on_gui_elem_changed 
---@field on_gui_location_changed defines.events.on_gui_location_changed 
---@field on_gui_opened defines.events.on_gui_opened 
---@field on_gui_selected_tab_changed defines.events.on_gui_selected_tab_changed 
---@field on_gui_selection_state_changed defines.events.on_gui_selection_state_changed 
---@field on_gui_switch_state_changed defines.events.on_gui_switch_state_changed 
---@field on_gui_text_changed defines.events.on_gui_text_changed 
---@field on_gui_value_changed defines.events.on_gui_value_changed 
---@field on_land_mine_armed defines.events.on_land_mine_armed 
---@field on_lua_shortcut defines.events.on_lua_shortcut 
---@field on_marked_for_deconstruction defines.events.on_marked_for_deconstruction 
---@field on_marked_for_upgrade defines.events.on_marked_for_upgrade 
---@field on_market_item_purchased defines.events.on_market_item_purchased 
---@field on_mod_item_opened defines.events.on_mod_item_opened 
---@field on_permission_group_added defines.events.on_permission_group_added 
---@field on_permission_group_deleted defines.events.on_permission_group_deleted 
---@field on_permission_group_edited defines.events.on_permission_group_edited 
---@field on_permission_string_imported defines.events.on_permission_string_imported 
---@field on_picked_up_item defines.events.on_picked_up_item 
---@field on_player_alt_selected_area defines.events.on_player_alt_selected_area 
---@field on_player_ammo_inventory_changed defines.events.on_player_ammo_inventory_changed 
---@field on_player_armor_inventory_changed defines.events.on_player_armor_inventory_changed 
---@field on_player_banned defines.events.on_player_banned 
---@field on_player_built_tile defines.events.on_player_built_tile 
---@field on_player_cancelled_crafting defines.events.on_player_cancelled_crafting 
---@field on_player_changed_force defines.events.on_player_changed_force 
---@field on_player_changed_position defines.events.on_player_changed_position 
---@field on_player_changed_surface defines.events.on_player_changed_surface 
---@field on_player_cheat_mode_disabled defines.events.on_player_cheat_mode_disabled 
---@field on_player_cheat_mode_enabled defines.events.on_player_cheat_mode_enabled 
---@field on_player_clicked_gps_tag defines.events.on_player_clicked_gps_tag 
---@field on_player_configured_blueprint defines.events.on_player_configured_blueprint 
---@field on_player_configured_spider_remote defines.events.on_player_configured_spider_remote 
---@field on_player_crafted_item defines.events.on_player_crafted_item 
---@field on_player_created defines.events.on_player_created 
---@field on_player_cursor_stack_changed defines.events.on_player_cursor_stack_changed 
---@field on_player_deconstructed_area defines.events.on_player_deconstructed_area 
---@field on_player_demoted defines.events.on_player_demoted 
---@field on_player_died defines.events.on_player_died 
---@field on_player_display_resolution_changed defines.events.on_player_display_resolution_changed 
---@field on_player_display_scale_changed defines.events.on_player_display_scale_changed 
---@field on_player_driving_changed_state defines.events.on_player_driving_changed_state 
---@field on_player_dropped_item defines.events.on_player_dropped_item 
---@field on_player_fast_transferred defines.events.on_player_fast_transferred 
---@field on_player_flushed_fluid defines.events.on_player_flushed_fluid 
---@field on_player_gun_inventory_changed defines.events.on_player_gun_inventory_changed 
---@field on_player_joined_game defines.events.on_player_joined_game 
---@field on_player_kicked defines.events.on_player_kicked 
---@field on_player_left_game defines.events.on_player_left_game 
---@field on_player_main_inventory_changed defines.events.on_player_main_inventory_changed 
---@field on_player_mined_entity defines.events.on_player_mined_entity 
---@field on_player_mined_item defines.events.on_player_mined_item 
---@field on_player_mined_tile defines.events.on_player_mined_tile 
---@field on_player_muted defines.events.on_player_muted 
---@field on_player_pipette defines.events.on_player_pipette 
---@field on_player_placed_equipment defines.events.on_player_placed_equipment 
---@field on_player_promoted defines.events.on_player_promoted 
---@field on_player_removed defines.events.on_player_removed 
---@field on_player_removed_equipment defines.events.on_player_removed_equipment 
---@field on_player_repaired_entity defines.events.on_player_repaired_entity 
---@field on_player_respawned defines.events.on_player_respawned 
---@field on_player_reverse_selected_area defines.events.on_player_reverse_selected_area 
---@field on_player_rotated_entity defines.events.on_player_rotated_entity 
---@field on_player_selected_area defines.events.on_player_selected_area 
---@field on_player_set_quick_bar_slot defines.events.on_player_set_quick_bar_slot 
---@field on_player_setup_blueprint defines.events.on_player_setup_blueprint 
---@field on_player_toggled_alt_mode defines.events.on_player_toggled_alt_mode 
---@field on_player_toggled_map_editor defines.events.on_player_toggled_map_editor 
---@field on_player_trash_inventory_changed defines.events.on_player_trash_inventory_changed 
---@field on_player_unbanned defines.events.on_player_unbanned 
---@field on_player_unmuted defines.events.on_player_unmuted 
---@field on_player_used_capsule defines.events.on_player_used_capsule 
---@field on_player_used_spider_remote defines.events.on_player_used_spider_remote 
---@field on_post_entity_died defines.events.on_post_entity_died 
---@field on_pre_build defines.events.on_pre_build 
---@field on_pre_chunk_deleted defines.events.on_pre_chunk_deleted 
---@field on_pre_entity_settings_pasted defines.events.on_pre_entity_settings_pasted 
---@field on_pre_ghost_deconstructed defines.events.on_pre_ghost_deconstructed 
---@field on_pre_ghost_upgraded defines.events.on_pre_ghost_upgraded 
---@field on_pre_permission_group_deleted defines.events.on_pre_permission_group_deleted 
---@field on_pre_permission_string_imported defines.events.on_pre_permission_string_imported 
---@field on_pre_player_crafted_item defines.events.on_pre_player_crafted_item 
---@field on_pre_player_died defines.events.on_pre_player_died 
---@field on_pre_player_left_game defines.events.on_pre_player_left_game 
---@field on_pre_player_mined_item defines.events.on_pre_player_mined_item 
---@field on_pre_player_removed defines.events.on_pre_player_removed 
---@field on_pre_player_toggled_map_editor defines.events.on_pre_player_toggled_map_editor 
---@field on_pre_robot_exploded_cliff defines.events.on_pre_robot_exploded_cliff 
---@field on_pre_script_inventory_resized defines.events.on_pre_script_inventory_resized 
---@field on_pre_surface_cleared defines.events.on_pre_surface_cleared 
---@field on_pre_surface_deleted defines.events.on_pre_surface_deleted 
---@field on_research_cancelled defines.events.on_research_cancelled 
---@field on_research_finished defines.events.on_research_finished 
---@field on_research_reversed defines.events.on_research_reversed 
---@field on_research_started defines.events.on_research_started 
---@field on_resource_depleted defines.events.on_resource_depleted 
---@field on_robot_built_entity defines.events.on_robot_built_entity 
---@field on_robot_built_tile defines.events.on_robot_built_tile 
---@field on_robot_exploded_cliff defines.events.on_robot_exploded_cliff 
---@field on_robot_mined defines.events.on_robot_mined 
---@field on_robot_mined_entity defines.events.on_robot_mined_entity 
---@field on_robot_mined_tile defines.events.on_robot_mined_tile 
---@field on_robot_pre_mined defines.events.on_robot_pre_mined 
---@field on_rocket_launch_ordered defines.events.on_rocket_launch_ordered 
---@field on_rocket_launched defines.events.on_rocket_launched 
---@field on_runtime_mod_setting_changed defines.events.on_runtime_mod_setting_changed 
---@field on_script_inventory_resized defines.events.on_script_inventory_resized 
---@field on_script_path_request_finished defines.events.on_script_path_request_finished 
---@field on_script_trigger_effect defines.events.on_script_trigger_effect 
---@field on_sector_scanned defines.events.on_sector_scanned 
---@field on_selected_entity_changed defines.events.on_selected_entity_changed 
---@field on_spider_command_completed defines.events.on_spider_command_completed 
---@field on_string_translated defines.events.on_string_translated 
---@field on_surface_cleared defines.events.on_surface_cleared 
---@field on_surface_created defines.events.on_surface_created 
---@field on_surface_deleted defines.events.on_surface_deleted 
---@field on_surface_imported defines.events.on_surface_imported 
---@field on_surface_renamed defines.events.on_surface_renamed 
---@field on_technology_effects_reset defines.events.on_technology_effects_reset 
---@field on_tick defines.events.on_tick 
---@field on_train_changed_state defines.events.on_train_changed_state 
---@field on_train_created defines.events.on_train_created 
---@field on_train_schedule_changed defines.events.on_train_schedule_changed 
---@field on_trigger_created_entity defines.events.on_trigger_created_entity 
---@field on_trigger_fired_artillery defines.events.on_trigger_fired_artillery 
---@field on_unit_added_to_group defines.events.on_unit_added_to_group 
---@field on_unit_group_created defines.events.on_unit_group_created 
---@field on_unit_group_finished_gathering defines.events.on_unit_group_finished_gathering 
---@field on_unit_removed_from_group defines.events.on_unit_removed_from_group 
---@field on_worker_robot_expired defines.events.on_worker_robot_expired 
---@field script_raised_built defines.events.script_raised_built 
---@field script_raised_destroy defines.events.script_raised_destroy 
---@field script_raised_revive defines.events.script_raised_revive 
---@field script_raised_set_tiles defines.events.script_raised_set_tiles 
defines.events={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.flow_precision_index)
---@class defines.flow_precision_index
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.flow_precision_index.fifty_hours)
---@class defines.flow_precision_index.fifty_hours : defines.flow_precision_index 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.flow_precision_index.five_seconds)
---@class defines.flow_precision_index.five_seconds : defines.flow_precision_index 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.flow_precision_index.one_hour)
---@class defines.flow_precision_index.one_hour : defines.flow_precision_index 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.flow_precision_index.one_minute)
---@class defines.flow_precision_index.one_minute : defines.flow_precision_index 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.flow_precision_index.one_thousand_hours)
---@class defines.flow_precision_index.one_thousand_hours : defines.flow_precision_index 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.flow_precision_index.ten_hours)
---@class defines.flow_precision_index.ten_hours : defines.flow_precision_index 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.flow_precision_index.ten_minutes)
---@class defines.flow_precision_index.ten_minutes : defines.flow_precision_index 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.flow_precision_index.two_hundred_fifty_hours)
---@class defines.flow_precision_index.two_hundred_fifty_hours : defines.flow_precision_index 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.flow_precision_index)
---@class defines.flow_precision_index.__index
---@field fifty_hours defines.flow_precision_index.fifty_hours 
---@field five_seconds defines.flow_precision_index.five_seconds 
---@field one_hour defines.flow_precision_index.one_hour 
---@field one_minute defines.flow_precision_index.one_minute 
---@field one_thousand_hours defines.flow_precision_index.one_thousand_hours 
---@field ten_hours defines.flow_precision_index.ten_hours 
---@field ten_minutes defines.flow_precision_index.ten_minutes 
---@field two_hundred_fifty_hours defines.flow_precision_index.two_hundred_fifty_hours 
defines.flow_precision_index={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.group_state)
---@class defines.group_state
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.group_state.attacking_distraction)
---@class defines.group_state.attacking_distraction : defines.group_state 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.group_state.attacking_target)
---@class defines.group_state.attacking_target : defines.group_state 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.group_state.finished)
---@class defines.group_state.finished : defines.group_state 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.group_state.gathering)
---@class defines.group_state.gathering : defines.group_state 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.group_state.moving)
---@class defines.group_state.moving : defines.group_state 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.group_state.pathfinding)
---@class defines.group_state.pathfinding : defines.group_state 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.group_state.wander_in_group)
---@class defines.group_state.wander_in_group : defines.group_state 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.group_state)
---@class defines.group_state.__index
---@field attacking_distraction defines.group_state.attacking_distraction 
---@field attacking_target defines.group_state.attacking_target 
---@field finished defines.group_state.finished 
---@field gathering defines.group_state.gathering 
---@field moving defines.group_state.moving 
---@field pathfinding defines.group_state.pathfinding 
---@field wander_in_group defines.group_state.wander_in_group 
defines.group_state={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.gui_type)
---@class defines.gui_type
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.gui_type.achievement)
---@class defines.gui_type.achievement : defines.gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.gui_type.blueprint_library)
---@class defines.gui_type.blueprint_library : defines.gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.gui_type.bonus)
---@class defines.gui_type.bonus : defines.gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.gui_type.controller)
---@class defines.gui_type.controller : defines.gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.gui_type.custom)
---@class defines.gui_type.custom : defines.gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.gui_type.entity)
---@class defines.gui_type.entity : defines.gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.gui_type.equipment)
---@class defines.gui_type.equipment : defines.gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.gui_type.item)
---@class defines.gui_type.item : defines.gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.gui_type.logistic)
---@class defines.gui_type.logistic : defines.gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.gui_type.none)
---@class defines.gui_type.none : defines.gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.gui_type.other_player)
---@class defines.gui_type.other_player : defines.gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.gui_type.permissions)
---@class defines.gui_type.permissions : defines.gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.gui_type.player_management)
---@class defines.gui_type.player_management : defines.gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.gui_type.production)
---@class defines.gui_type.production : defines.gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.gui_type.research)
---@class defines.gui_type.research : defines.gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.gui_type.script_inventory)
---@class defines.gui_type.script_inventory : defines.gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.gui_type.server_management)
---@class defines.gui_type.server_management : defines.gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.gui_type.tile)
---@class defines.gui_type.tile : defines.gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.gui_type.trains)
---@class defines.gui_type.trains : defines.gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.gui_type.tutorials)
---@class defines.gui_type.tutorials : defines.gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.gui_type)
---@class defines.gui_type.__index
---@field achievement defines.gui_type.achievement 
---@field blueprint_library defines.gui_type.blueprint_library 
---@field bonus defines.gui_type.bonus 
---@field controller defines.gui_type.controller 
---@field custom defines.gui_type.custom 
---@field entity defines.gui_type.entity 
---@field equipment defines.gui_type.equipment 
---@field item defines.gui_type.item 
---@field logistic defines.gui_type.logistic 
---@field none defines.gui_type.none 
---@field other_player defines.gui_type.other_player 
---@field permissions defines.gui_type.permissions 
---@field player_management defines.gui_type.player_management 
---@field production defines.gui_type.production 
---@field research defines.gui_type.research 
---@field script_inventory defines.gui_type.script_inventory 
---@field server_management defines.gui_type.server_management 
---@field tile defines.gui_type.tile 
---@field trains defines.gui_type.trains 
---@field tutorials defines.gui_type.tutorials 
defines.gui_type={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action)
---@class defines.input_action
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.activate_copy)
---@class defines.input_action.activate_copy : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.activate_cut)
---@class defines.input_action.activate_cut : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.activate_paste)
---@class defines.input_action.activate_paste : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.add_permission_group)
---@class defines.input_action.add_permission_group : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.add_train_station)
---@class defines.input_action.add_train_station : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.admin_action)
---@class defines.input_action.admin_action : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.alt_select_area)
---@class defines.input_action.alt_select_area : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.alt_select_blueprint_entities)
---@class defines.input_action.alt_select_blueprint_entities : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.alternative_copy)
---@class defines.input_action.alternative_copy : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.begin_mining)
---@class defines.input_action.begin_mining : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.begin_mining_terrain)
---@class defines.input_action.begin_mining_terrain : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.build)
---@class defines.input_action.build : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.build_rail)
---@class defines.input_action.build_rail : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.build_terrain)
---@class defines.input_action.build_terrain : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.cancel_craft)
---@class defines.input_action.cancel_craft : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.cancel_deconstruct)
---@class defines.input_action.cancel_deconstruct : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.cancel_new_blueprint)
---@class defines.input_action.cancel_new_blueprint : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.cancel_research)
---@class defines.input_action.cancel_research : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.cancel_upgrade)
---@class defines.input_action.cancel_upgrade : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.change_active_character_tab)
---@class defines.input_action.change_active_character_tab : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.change_active_item_group_for_crafting)
---@class defines.input_action.change_active_item_group_for_crafting : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.change_active_item_group_for_filters)
---@class defines.input_action.change_active_item_group_for_filters : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.change_active_quick_bar)
---@class defines.input_action.change_active_quick_bar : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.change_arithmetic_combinator_parameters)
---@class defines.input_action.change_arithmetic_combinator_parameters : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.change_decider_combinator_parameters)
---@class defines.input_action.change_decider_combinator_parameters : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.change_entity_label)
---@class defines.input_action.change_entity_label : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.change_item_description)
---@class defines.input_action.change_item_description : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.change_item_label)
---@class defines.input_action.change_item_label : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.change_multiplayer_config)
---@class defines.input_action.change_multiplayer_config : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.change_picking_state)
---@class defines.input_action.change_picking_state : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.change_programmable_speaker_alert_parameters)
---@class defines.input_action.change_programmable_speaker_alert_parameters : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.change_programmable_speaker_circuit_parameters)
---@class defines.input_action.change_programmable_speaker_circuit_parameters : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.change_programmable_speaker_parameters)
---@class defines.input_action.change_programmable_speaker_parameters : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.change_riding_state)
---@class defines.input_action.change_riding_state : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.change_shooting_state)
---@class defines.input_action.change_shooting_state : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.change_train_stop_station)
---@class defines.input_action.change_train_stop_station : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.change_train_wait_condition)
---@class defines.input_action.change_train_wait_condition : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.change_train_wait_condition_data)
---@class defines.input_action.change_train_wait_condition_data : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.clear_cursor)
---@class defines.input_action.clear_cursor : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.connect_rolling_stock)
---@class defines.input_action.connect_rolling_stock : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.copy)
---@class defines.input_action.copy : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.copy_entity_settings)
---@class defines.input_action.copy_entity_settings : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.copy_opened_blueprint)
---@class defines.input_action.copy_opened_blueprint : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.copy_opened_item)
---@class defines.input_action.copy_opened_item : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.craft)
---@class defines.input_action.craft : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.cursor_split)
---@class defines.input_action.cursor_split : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.cursor_transfer)
---@class defines.input_action.cursor_transfer : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.custom_input)
---@class defines.input_action.custom_input : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.cycle_blueprint_book_backwards)
---@class defines.input_action.cycle_blueprint_book_backwards : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.cycle_blueprint_book_forwards)
---@class defines.input_action.cycle_blueprint_book_forwards : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.deconstruct)
---@class defines.input_action.deconstruct : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.delete_blueprint_library)
---@class defines.input_action.delete_blueprint_library : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.delete_blueprint_record)
---@class defines.input_action.delete_blueprint_record : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.delete_custom_tag)
---@class defines.input_action.delete_custom_tag : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.delete_permission_group)
---@class defines.input_action.delete_permission_group : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.destroy_item)
---@class defines.input_action.destroy_item : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.destroy_opened_item)
---@class defines.input_action.destroy_opened_item : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.disconnect_rolling_stock)
---@class defines.input_action.disconnect_rolling_stock : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.drag_train_schedule)
---@class defines.input_action.drag_train_schedule : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.drag_train_wait_condition)
---@class defines.input_action.drag_train_wait_condition : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.drop_blueprint_record)
---@class defines.input_action.drop_blueprint_record : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.drop_item)
---@class defines.input_action.drop_item : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.edit_blueprint_tool_preview)
---@class defines.input_action.edit_blueprint_tool_preview : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.edit_custom_tag)
---@class defines.input_action.edit_custom_tag : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.edit_permission_group)
---@class defines.input_action.edit_permission_group : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.export_blueprint)
---@class defines.input_action.export_blueprint : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.fast_entity_split)
---@class defines.input_action.fast_entity_split : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.fast_entity_transfer)
---@class defines.input_action.fast_entity_transfer : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.flush_opened_entity_fluid)
---@class defines.input_action.flush_opened_entity_fluid : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.flush_opened_entity_specific_fluid)
---@class defines.input_action.flush_opened_entity_specific_fluid : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.go_to_train_station)
---@class defines.input_action.go_to_train_station : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.grab_blueprint_record)
---@class defines.input_action.grab_blueprint_record : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.gui_checked_state_changed)
---@class defines.input_action.gui_checked_state_changed : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.gui_click)
---@class defines.input_action.gui_click : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.gui_confirmed)
---@class defines.input_action.gui_confirmed : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.gui_elem_changed)
---@class defines.input_action.gui_elem_changed : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.gui_location_changed)
---@class defines.input_action.gui_location_changed : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.gui_selected_tab_changed)
---@class defines.input_action.gui_selected_tab_changed : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.gui_selection_state_changed)
---@class defines.input_action.gui_selection_state_changed : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.gui_switch_state_changed)
---@class defines.input_action.gui_switch_state_changed : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.gui_text_changed)
---@class defines.input_action.gui_text_changed : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.gui_value_changed)
---@class defines.input_action.gui_value_changed : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.import_blueprint)
---@class defines.input_action.import_blueprint : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.import_blueprint_string)
---@class defines.input_action.import_blueprint_string : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.import_blueprints_filtered)
---@class defines.input_action.import_blueprints_filtered : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.import_permissions_string)
---@class defines.input_action.import_permissions_string : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.inventory_split)
---@class defines.input_action.inventory_split : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.inventory_transfer)
---@class defines.input_action.inventory_transfer : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.launch_rocket)
---@class defines.input_action.launch_rocket : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.lua_shortcut)
---@class defines.input_action.lua_shortcut : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.map_editor_action)
---@class defines.input_action.map_editor_action : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.market_offer)
---@class defines.input_action.market_offer : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.mod_settings_changed)
---@class defines.input_action.mod_settings_changed : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.open_achievements_gui)
---@class defines.input_action.open_achievements_gui : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.open_blueprint_library_gui)
---@class defines.input_action.open_blueprint_library_gui : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.open_blueprint_record)
---@class defines.input_action.open_blueprint_record : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.open_bonus_gui)
---@class defines.input_action.open_bonus_gui : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.open_character_gui)
---@class defines.input_action.open_character_gui : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.open_current_vehicle_gui)
---@class defines.input_action.open_current_vehicle_gui : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.open_equipment)
---@class defines.input_action.open_equipment : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.open_gui)
---@class defines.input_action.open_gui : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.open_item)
---@class defines.input_action.open_item : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.open_logistic_gui)
---@class defines.input_action.open_logistic_gui : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.open_mod_item)
---@class defines.input_action.open_mod_item : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.open_parent_of_opened_item)
---@class defines.input_action.open_parent_of_opened_item : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.open_production_gui)
---@class defines.input_action.open_production_gui : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.open_technology_gui)
---@class defines.input_action.open_technology_gui : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.open_tips_and_tricks_gui)
---@class defines.input_action.open_tips_and_tricks_gui : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.open_train_gui)
---@class defines.input_action.open_train_gui : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.open_train_station_gui)
---@class defines.input_action.open_train_station_gui : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.open_trains_gui)
---@class defines.input_action.open_trains_gui : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.paste_entity_settings)
---@class defines.input_action.paste_entity_settings : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.place_equipment)
---@class defines.input_action.place_equipment : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.quick_bar_pick_slot)
---@class defines.input_action.quick_bar_pick_slot : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.quick_bar_set_selected_page)
---@class defines.input_action.quick_bar_set_selected_page : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.quick_bar_set_slot)
---@class defines.input_action.quick_bar_set_slot : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.reassign_blueprint)
---@class defines.input_action.reassign_blueprint : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.remove_cables)
---@class defines.input_action.remove_cables : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.remove_train_station)
---@class defines.input_action.remove_train_station : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.reset_assembling_machine)
---@class defines.input_action.reset_assembling_machine : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.reset_item)
---@class defines.input_action.reset_item : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.reverse_select_area)
---@class defines.input_action.reverse_select_area : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.rotate_entity)
---@class defines.input_action.rotate_entity : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.select_area)
---@class defines.input_action.select_area : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.select_blueprint_entities)
---@class defines.input_action.select_blueprint_entities : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.select_entity_slot)
---@class defines.input_action.select_entity_slot : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.select_item)
---@class defines.input_action.select_item : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.select_mapper_slot)
---@class defines.input_action.select_mapper_slot : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.select_next_valid_gun)
---@class defines.input_action.select_next_valid_gun : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.select_tile_slot)
---@class defines.input_action.select_tile_slot : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.send_spidertron)
---@class defines.input_action.send_spidertron : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_auto_launch_rocket)
---@class defines.input_action.set_auto_launch_rocket : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_autosort_inventory)
---@class defines.input_action.set_autosort_inventory : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_behavior_mode)
---@class defines.input_action.set_behavior_mode : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_car_weapons_control)
---@class defines.input_action.set_car_weapons_control : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_circuit_condition)
---@class defines.input_action.set_circuit_condition : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_circuit_mode_of_operation)
---@class defines.input_action.set_circuit_mode_of_operation : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_controller_logistic_trash_filter_item)
---@class defines.input_action.set_controller_logistic_trash_filter_item : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_deconstruction_item_tile_selection_mode)
---@class defines.input_action.set_deconstruction_item_tile_selection_mode : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_deconstruction_item_trees_and_rocks_only)
---@class defines.input_action.set_deconstruction_item_trees_and_rocks_only : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_entity_color)
---@class defines.input_action.set_entity_color : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_entity_energy_property)
---@class defines.input_action.set_entity_energy_property : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_entity_logistic_trash_filter_item)
---@class defines.input_action.set_entity_logistic_trash_filter_item : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_filter)
---@class defines.input_action.set_filter : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_flat_controller_gui)
---@class defines.input_action.set_flat_controller_gui : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_heat_interface_mode)
---@class defines.input_action.set_heat_interface_mode : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_heat_interface_temperature)
---@class defines.input_action.set_heat_interface_temperature : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_infinity_container_filter_item)
---@class defines.input_action.set_infinity_container_filter_item : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_infinity_container_remove_unfiltered_items)
---@class defines.input_action.set_infinity_container_remove_unfiltered_items : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_infinity_pipe_filter)
---@class defines.input_action.set_infinity_pipe_filter : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_inserter_max_stack_size)
---@class defines.input_action.set_inserter_max_stack_size : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_inventory_bar)
---@class defines.input_action.set_inventory_bar : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_linked_container_link_i_d)
---@class defines.input_action.set_linked_container_link_i_d : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_logistic_filter_item)
---@class defines.input_action.set_logistic_filter_item : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_logistic_filter_signal)
---@class defines.input_action.set_logistic_filter_signal : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_player_color)
---@class defines.input_action.set_player_color : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_recipe_notifications)
---@class defines.input_action.set_recipe_notifications : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_request_from_buffers)
---@class defines.input_action.set_request_from_buffers : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_research_finished_stops_game)
---@class defines.input_action.set_research_finished_stops_game : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_signal)
---@class defines.input_action.set_signal : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_splitter_priority)
---@class defines.input_action.set_splitter_priority : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_train_stopped)
---@class defines.input_action.set_train_stopped : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_trains_limit)
---@class defines.input_action.set_trains_limit : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.set_vehicle_automatic_targeting_parameters)
---@class defines.input_action.set_vehicle_automatic_targeting_parameters : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.setup_assembling_machine)
---@class defines.input_action.setup_assembling_machine : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.setup_blueprint)
---@class defines.input_action.setup_blueprint : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.setup_single_blueprint_record)
---@class defines.input_action.setup_single_blueprint_record : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.smart_pipette)
---@class defines.input_action.smart_pipette : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.spawn_item)
---@class defines.input_action.spawn_item : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.stack_split)
---@class defines.input_action.stack_split : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.stack_transfer)
---@class defines.input_action.stack_transfer : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.start_repair)
---@class defines.input_action.start_repair : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.start_research)
---@class defines.input_action.start_research : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.start_walking)
---@class defines.input_action.start_walking : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.stop_building_by_moving)
---@class defines.input_action.stop_building_by_moving : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.switch_connect_to_logistic_network)
---@class defines.input_action.switch_connect_to_logistic_network : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.switch_constant_combinator_state)
---@class defines.input_action.switch_constant_combinator_state : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.switch_inserter_filter_mode_state)
---@class defines.input_action.switch_inserter_filter_mode_state : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.switch_power_switch_state)
---@class defines.input_action.switch_power_switch_state : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.switch_to_rename_stop_gui)
---@class defines.input_action.switch_to_rename_stop_gui : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.take_equipment)
---@class defines.input_action.take_equipment : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.toggle_deconstruction_item_entity_filter_mode)
---@class defines.input_action.toggle_deconstruction_item_entity_filter_mode : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.toggle_deconstruction_item_tile_filter_mode)
---@class defines.input_action.toggle_deconstruction_item_tile_filter_mode : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.toggle_driving)
---@class defines.input_action.toggle_driving : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.toggle_enable_vehicle_logistics_while_moving)
---@class defines.input_action.toggle_enable_vehicle_logistics_while_moving : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.toggle_entity_logistic_requests)
---@class defines.input_action.toggle_entity_logistic_requests : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.toggle_equipment_movement_bonus)
---@class defines.input_action.toggle_equipment_movement_bonus : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.toggle_map_editor)
---@class defines.input_action.toggle_map_editor : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.toggle_personal_logistic_requests)
---@class defines.input_action.toggle_personal_logistic_requests : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.toggle_personal_roboport)
---@class defines.input_action.toggle_personal_roboport : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.toggle_show_entity_info)
---@class defines.input_action.toggle_show_entity_info : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.translate_string)
---@class defines.input_action.translate_string : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.undo)
---@class defines.input_action.undo : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.upgrade)
---@class defines.input_action.upgrade : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.upgrade_opened_blueprint_by_item)
---@class defines.input_action.upgrade_opened_blueprint_by_item : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.upgrade_opened_blueprint_by_record)
---@class defines.input_action.upgrade_opened_blueprint_by_record : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.use_artillery_remote)
---@class defines.input_action.use_artillery_remote : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.use_item)
---@class defines.input_action.use_item : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.wire_dragging)
---@class defines.input_action.wire_dragging : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action.write_to_console)
---@class defines.input_action.write_to_console : defines.input_action 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_action)
---@class defines.input_action.__index
---@field activate_copy defines.input_action.activate_copy 
---@field activate_cut defines.input_action.activate_cut 
---@field activate_paste defines.input_action.activate_paste 
---@field add_permission_group defines.input_action.add_permission_group 
---@field add_train_station defines.input_action.add_train_station 
---@field admin_action defines.input_action.admin_action 
---@field alt_select_area defines.input_action.alt_select_area 
---@field alt_select_blueprint_entities defines.input_action.alt_select_blueprint_entities 
---@field alternative_copy defines.input_action.alternative_copy 
---@field begin_mining defines.input_action.begin_mining 
---@field begin_mining_terrain defines.input_action.begin_mining_terrain 
---@field build defines.input_action.build 
---@field build_rail defines.input_action.build_rail 
---@field build_terrain defines.input_action.build_terrain 
---@field cancel_craft defines.input_action.cancel_craft 
---@field cancel_deconstruct defines.input_action.cancel_deconstruct 
---@field cancel_new_blueprint defines.input_action.cancel_new_blueprint 
---@field cancel_research defines.input_action.cancel_research 
---@field cancel_upgrade defines.input_action.cancel_upgrade 
---@field change_active_character_tab defines.input_action.change_active_character_tab 
---@field change_active_item_group_for_crafting defines.input_action.change_active_item_group_for_crafting 
---@field change_active_item_group_for_filters defines.input_action.change_active_item_group_for_filters 
---@field change_active_quick_bar defines.input_action.change_active_quick_bar 
---@field change_arithmetic_combinator_parameters defines.input_action.change_arithmetic_combinator_parameters 
---@field change_decider_combinator_parameters defines.input_action.change_decider_combinator_parameters 
---@field change_entity_label defines.input_action.change_entity_label 
---@field change_item_description defines.input_action.change_item_description 
---@field change_item_label defines.input_action.change_item_label 
---@field change_multiplayer_config defines.input_action.change_multiplayer_config 
---@field change_picking_state defines.input_action.change_picking_state 
---@field change_programmable_speaker_alert_parameters defines.input_action.change_programmable_speaker_alert_parameters 
---@field change_programmable_speaker_circuit_parameters defines.input_action.change_programmable_speaker_circuit_parameters 
---@field change_programmable_speaker_parameters defines.input_action.change_programmable_speaker_parameters 
---@field change_riding_state defines.input_action.change_riding_state 
---@field change_shooting_state defines.input_action.change_shooting_state 
---@field change_train_stop_station defines.input_action.change_train_stop_station 
---@field change_train_wait_condition defines.input_action.change_train_wait_condition 
---@field change_train_wait_condition_data defines.input_action.change_train_wait_condition_data 
---@field clear_cursor defines.input_action.clear_cursor 
---@field connect_rolling_stock defines.input_action.connect_rolling_stock 
---@field copy defines.input_action.copy 
---@field copy_entity_settings defines.input_action.copy_entity_settings 
---@field copy_opened_blueprint defines.input_action.copy_opened_blueprint 
---@field copy_opened_item defines.input_action.copy_opened_item 
---@field craft defines.input_action.craft 
---@field cursor_split defines.input_action.cursor_split 
---@field cursor_transfer defines.input_action.cursor_transfer 
---@field custom_input defines.input_action.custom_input 
---@field cycle_blueprint_book_backwards defines.input_action.cycle_blueprint_book_backwards 
---@field cycle_blueprint_book_forwards defines.input_action.cycle_blueprint_book_forwards 
---@field deconstruct defines.input_action.deconstruct 
---@field delete_blueprint_library defines.input_action.delete_blueprint_library 
---@field delete_blueprint_record defines.input_action.delete_blueprint_record 
---@field delete_custom_tag defines.input_action.delete_custom_tag 
---@field delete_permission_group defines.input_action.delete_permission_group 
---@field destroy_item defines.input_action.destroy_item 
---@field destroy_opened_item defines.input_action.destroy_opened_item 
---@field disconnect_rolling_stock defines.input_action.disconnect_rolling_stock 
---@field drag_train_schedule defines.input_action.drag_train_schedule 
---@field drag_train_wait_condition defines.input_action.drag_train_wait_condition 
---@field drop_blueprint_record defines.input_action.drop_blueprint_record 
---@field drop_item defines.input_action.drop_item 
---@field edit_blueprint_tool_preview defines.input_action.edit_blueprint_tool_preview 
---@field edit_custom_tag defines.input_action.edit_custom_tag 
---@field edit_permission_group defines.input_action.edit_permission_group 
---@field export_blueprint defines.input_action.export_blueprint 
---@field fast_entity_split defines.input_action.fast_entity_split 
---@field fast_entity_transfer defines.input_action.fast_entity_transfer 
---@field flush_opened_entity_fluid defines.input_action.flush_opened_entity_fluid 
---@field flush_opened_entity_specific_fluid defines.input_action.flush_opened_entity_specific_fluid 
---@field go_to_train_station defines.input_action.go_to_train_station 
---@field grab_blueprint_record defines.input_action.grab_blueprint_record 
---@field gui_checked_state_changed defines.input_action.gui_checked_state_changed 
---@field gui_click defines.input_action.gui_click 
---@field gui_confirmed defines.input_action.gui_confirmed 
---@field gui_elem_changed defines.input_action.gui_elem_changed 
---@field gui_location_changed defines.input_action.gui_location_changed 
---@field gui_selected_tab_changed defines.input_action.gui_selected_tab_changed 
---@field gui_selection_state_changed defines.input_action.gui_selection_state_changed 
---@field gui_switch_state_changed defines.input_action.gui_switch_state_changed 
---@field gui_text_changed defines.input_action.gui_text_changed 
---@field gui_value_changed defines.input_action.gui_value_changed 
---@field import_blueprint defines.input_action.import_blueprint 
---@field import_blueprint_string defines.input_action.import_blueprint_string 
---@field import_blueprints_filtered defines.input_action.import_blueprints_filtered 
---@field import_permissions_string defines.input_action.import_permissions_string 
---@field inventory_split defines.input_action.inventory_split 
---@field inventory_transfer defines.input_action.inventory_transfer 
---@field launch_rocket defines.input_action.launch_rocket 
---@field lua_shortcut defines.input_action.lua_shortcut 
---@field map_editor_action defines.input_action.map_editor_action 
---@field market_offer defines.input_action.market_offer 
---@field mod_settings_changed defines.input_action.mod_settings_changed 
---@field open_achievements_gui defines.input_action.open_achievements_gui 
---@field open_blueprint_library_gui defines.input_action.open_blueprint_library_gui 
---@field open_blueprint_record defines.input_action.open_blueprint_record 
---@field open_bonus_gui defines.input_action.open_bonus_gui 
---@field open_character_gui defines.input_action.open_character_gui 
---@field open_current_vehicle_gui defines.input_action.open_current_vehicle_gui 
---@field open_equipment defines.input_action.open_equipment 
---@field open_gui defines.input_action.open_gui 
---@field open_item defines.input_action.open_item 
---@field open_logistic_gui defines.input_action.open_logistic_gui 
---@field open_mod_item defines.input_action.open_mod_item 
---@field open_parent_of_opened_item defines.input_action.open_parent_of_opened_item 
---@field open_production_gui defines.input_action.open_production_gui 
---@field open_technology_gui defines.input_action.open_technology_gui 
---@field open_tips_and_tricks_gui defines.input_action.open_tips_and_tricks_gui 
---@field open_train_gui defines.input_action.open_train_gui 
---@field open_train_station_gui defines.input_action.open_train_station_gui 
---@field open_trains_gui defines.input_action.open_trains_gui 
---@field paste_entity_settings defines.input_action.paste_entity_settings 
---@field place_equipment defines.input_action.place_equipment 
---@field quick_bar_pick_slot defines.input_action.quick_bar_pick_slot 
---@field quick_bar_set_selected_page defines.input_action.quick_bar_set_selected_page 
---@field quick_bar_set_slot defines.input_action.quick_bar_set_slot 
---@field reassign_blueprint defines.input_action.reassign_blueprint 
---@field remove_cables defines.input_action.remove_cables 
---@field remove_train_station defines.input_action.remove_train_station 
---@field reset_assembling_machine defines.input_action.reset_assembling_machine 
---@field reset_item defines.input_action.reset_item 
---@field reverse_select_area defines.input_action.reverse_select_area 
---@field rotate_entity defines.input_action.rotate_entity 
---@field select_area defines.input_action.select_area 
---@field select_blueprint_entities defines.input_action.select_blueprint_entities 
---@field select_entity_slot defines.input_action.select_entity_slot 
---@field select_item defines.input_action.select_item 
---@field select_mapper_slot defines.input_action.select_mapper_slot 
---@field select_next_valid_gun defines.input_action.select_next_valid_gun 
---@field select_tile_slot defines.input_action.select_tile_slot 
---@field send_spidertron defines.input_action.send_spidertron 
---@field set_auto_launch_rocket defines.input_action.set_auto_launch_rocket 
---@field set_autosort_inventory defines.input_action.set_autosort_inventory 
---@field set_behavior_mode defines.input_action.set_behavior_mode 
---@field set_car_weapons_control defines.input_action.set_car_weapons_control 
---@field set_circuit_condition defines.input_action.set_circuit_condition 
---@field set_circuit_mode_of_operation defines.input_action.set_circuit_mode_of_operation 
---@field set_controller_logistic_trash_filter_item defines.input_action.set_controller_logistic_trash_filter_item 
---@field set_deconstruction_item_tile_selection_mode defines.input_action.set_deconstruction_item_tile_selection_mode 
---@field set_deconstruction_item_trees_and_rocks_only defines.input_action.set_deconstruction_item_trees_and_rocks_only 
---@field set_entity_color defines.input_action.set_entity_color 
---@field set_entity_energy_property defines.input_action.set_entity_energy_property 
---@field set_entity_logistic_trash_filter_item defines.input_action.set_entity_logistic_trash_filter_item 
---@field set_filter defines.input_action.set_filter 
---@field set_flat_controller_gui defines.input_action.set_flat_controller_gui 
---@field set_heat_interface_mode defines.input_action.set_heat_interface_mode 
---@field set_heat_interface_temperature defines.input_action.set_heat_interface_temperature 
---@field set_infinity_container_filter_item defines.input_action.set_infinity_container_filter_item 
---@field set_infinity_container_remove_unfiltered_items defines.input_action.set_infinity_container_remove_unfiltered_items 
---@field set_infinity_pipe_filter defines.input_action.set_infinity_pipe_filter 
---@field set_inserter_max_stack_size defines.input_action.set_inserter_max_stack_size 
---@field set_inventory_bar defines.input_action.set_inventory_bar 
---@field set_linked_container_link_i_d defines.input_action.set_linked_container_link_i_d 
---@field set_logistic_filter_item defines.input_action.set_logistic_filter_item 
---@field set_logistic_filter_signal defines.input_action.set_logistic_filter_signal 
---@field set_player_color defines.input_action.set_player_color 
---@field set_recipe_notifications defines.input_action.set_recipe_notifications 
---@field set_request_from_buffers defines.input_action.set_request_from_buffers 
---@field set_research_finished_stops_game defines.input_action.set_research_finished_stops_game 
---@field set_signal defines.input_action.set_signal 
---@field set_splitter_priority defines.input_action.set_splitter_priority 
---@field set_train_stopped defines.input_action.set_train_stopped 
---@field set_trains_limit defines.input_action.set_trains_limit 
---@field set_vehicle_automatic_targeting_parameters defines.input_action.set_vehicle_automatic_targeting_parameters 
---@field setup_assembling_machine defines.input_action.setup_assembling_machine 
---@field setup_blueprint defines.input_action.setup_blueprint 
---@field setup_single_blueprint_record defines.input_action.setup_single_blueprint_record 
---@field smart_pipette defines.input_action.smart_pipette 
---@field spawn_item defines.input_action.spawn_item 
---@field stack_split defines.input_action.stack_split 
---@field stack_transfer defines.input_action.stack_transfer 
---@field start_repair defines.input_action.start_repair 
---@field start_research defines.input_action.start_research 
---@field start_walking defines.input_action.start_walking 
---@field stop_building_by_moving defines.input_action.stop_building_by_moving 
---@field switch_connect_to_logistic_network defines.input_action.switch_connect_to_logistic_network 
---@field switch_constant_combinator_state defines.input_action.switch_constant_combinator_state 
---@field switch_inserter_filter_mode_state defines.input_action.switch_inserter_filter_mode_state 
---@field switch_power_switch_state defines.input_action.switch_power_switch_state 
---@field switch_to_rename_stop_gui defines.input_action.switch_to_rename_stop_gui 
---@field take_equipment defines.input_action.take_equipment 
---@field toggle_deconstruction_item_entity_filter_mode defines.input_action.toggle_deconstruction_item_entity_filter_mode 
---@field toggle_deconstruction_item_tile_filter_mode defines.input_action.toggle_deconstruction_item_tile_filter_mode 
---@field toggle_driving defines.input_action.toggle_driving 
---@field toggle_enable_vehicle_logistics_while_moving defines.input_action.toggle_enable_vehicle_logistics_while_moving 
---@field toggle_entity_logistic_requests defines.input_action.toggle_entity_logistic_requests 
---@field toggle_equipment_movement_bonus defines.input_action.toggle_equipment_movement_bonus 
---@field toggle_map_editor defines.input_action.toggle_map_editor 
---@field toggle_personal_logistic_requests defines.input_action.toggle_personal_logistic_requests 
---@field toggle_personal_roboport defines.input_action.toggle_personal_roboport 
---@field toggle_show_entity_info defines.input_action.toggle_show_entity_info 
---@field translate_string defines.input_action.translate_string 
---@field undo defines.input_action.undo 
---@field upgrade defines.input_action.upgrade 
---@field upgrade_opened_blueprint_by_item defines.input_action.upgrade_opened_blueprint_by_item 
---@field upgrade_opened_blueprint_by_record defines.input_action.upgrade_opened_blueprint_by_record 
---@field use_artillery_remote defines.input_action.use_artillery_remote 
---@field use_item defines.input_action.use_item 
---@field wire_dragging defines.input_action.wire_dragging 
---@field write_to_console defines.input_action.write_to_console 
defines.input_action={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_method)
---@class defines.input_method
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_method.game_controller)
---@class defines.input_method.game_controller : defines.input_method 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_method.keyboard_and_mouse)
---@class defines.input_method.keyboard_and_mouse : defines.input_method 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.input_method)
---@class defines.input_method.__index
---@field game_controller defines.input_method.game_controller 
---@field keyboard_and_mouse defines.input_method.keyboard_and_mouse 
defines.input_method={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory)
---@class defines.inventory
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.artillery_turret_ammo)
---@class defines.inventory.artillery_turret_ammo : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.artillery_wagon_ammo)
---@class defines.inventory.artillery_wagon_ammo : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.assembling_machine_input)
---@class defines.inventory.assembling_machine_input : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.assembling_machine_modules)
---@class defines.inventory.assembling_machine_modules : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.assembling_machine_output)
---@class defines.inventory.assembling_machine_output : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.beacon_modules)
---@class defines.inventory.beacon_modules : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.burnt_result)
---@class defines.inventory.burnt_result : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.car_ammo)
---@class defines.inventory.car_ammo : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.car_trunk)
---@class defines.inventory.car_trunk : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.cargo_wagon)
---@class defines.inventory.cargo_wagon : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.character_ammo)
---@class defines.inventory.character_ammo : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.character_armor)
---@class defines.inventory.character_armor : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.character_corpse)
---@class defines.inventory.character_corpse : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.character_guns)
---@class defines.inventory.character_guns : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.character_main)
---@class defines.inventory.character_main : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.character_trash)
---@class defines.inventory.character_trash : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.character_vehicle)
---@class defines.inventory.character_vehicle : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.chest)
---@class defines.inventory.chest : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.editor_ammo)
---@class defines.inventory.editor_ammo : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.editor_armor)
---@class defines.inventory.editor_armor : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.editor_guns)
---@class defines.inventory.editor_guns : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.editor_main)
---@class defines.inventory.editor_main : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.fuel)
---@class defines.inventory.fuel : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.furnace_modules)
---@class defines.inventory.furnace_modules : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.furnace_result)
---@class defines.inventory.furnace_result : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.furnace_source)
---@class defines.inventory.furnace_source : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.god_main)
---@class defines.inventory.god_main : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.item_main)
---@class defines.inventory.item_main : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.lab_input)
---@class defines.inventory.lab_input : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.lab_modules)
---@class defines.inventory.lab_modules : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.mining_drill_modules)
---@class defines.inventory.mining_drill_modules : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.roboport_material)
---@class defines.inventory.roboport_material : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.roboport_robot)
---@class defines.inventory.roboport_robot : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.robot_cargo)
---@class defines.inventory.robot_cargo : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.robot_repair)
---@class defines.inventory.robot_repair : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.rocket)
---@class defines.inventory.rocket : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.rocket_silo_input)
---@class defines.inventory.rocket_silo_input : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.rocket_silo_modules)
---@class defines.inventory.rocket_silo_modules : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.rocket_silo_output)
---@class defines.inventory.rocket_silo_output : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.rocket_silo_result)
---@class defines.inventory.rocket_silo_result : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.rocket_silo_rocket)
---@class defines.inventory.rocket_silo_rocket : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.spider_ammo)
---@class defines.inventory.spider_ammo : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.spider_trash)
---@class defines.inventory.spider_trash : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.spider_trunk)
---@class defines.inventory.spider_trunk : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory.turret_ammo)
---@class defines.inventory.turret_ammo : defines.inventory 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.inventory)
---@class defines.inventory.__index
---@field artillery_turret_ammo defines.inventory.artillery_turret_ammo 
---@field artillery_wagon_ammo defines.inventory.artillery_wagon_ammo 
---@field assembling_machine_input defines.inventory.assembling_machine_input 
---@field assembling_machine_modules defines.inventory.assembling_machine_modules 
---@field assembling_machine_output defines.inventory.assembling_machine_output 
---@field beacon_modules defines.inventory.beacon_modules 
---@field burnt_result defines.inventory.burnt_result 
---@field car_ammo defines.inventory.car_ammo 
---@field car_trunk defines.inventory.car_trunk 
---@field cargo_wagon defines.inventory.cargo_wagon 
---@field character_ammo defines.inventory.character_ammo 
---@field character_armor defines.inventory.character_armor 
---@field character_corpse defines.inventory.character_corpse 
---@field character_guns defines.inventory.character_guns 
---@field character_main defines.inventory.character_main 
---@field character_trash defines.inventory.character_trash 
---@field character_vehicle defines.inventory.character_vehicle 
---@field chest defines.inventory.chest 
---@field editor_ammo defines.inventory.editor_ammo 
---@field editor_armor defines.inventory.editor_armor 
---@field editor_guns defines.inventory.editor_guns 
---@field editor_main defines.inventory.editor_main 
---@field fuel defines.inventory.fuel 
---@field furnace_modules defines.inventory.furnace_modules 
---@field furnace_result defines.inventory.furnace_result 
---@field furnace_source defines.inventory.furnace_source 
---@field god_main defines.inventory.god_main 
---@field item_main defines.inventory.item_main 
---@field lab_input defines.inventory.lab_input 
---@field lab_modules defines.inventory.lab_modules 
---@field mining_drill_modules defines.inventory.mining_drill_modules 
---@field roboport_material defines.inventory.roboport_material 
---@field roboport_robot defines.inventory.roboport_robot 
---@field robot_cargo defines.inventory.robot_cargo 
---@field robot_repair defines.inventory.robot_repair 
---@field rocket defines.inventory.rocket 
---@field rocket_silo_input defines.inventory.rocket_silo_input 
---@field rocket_silo_modules defines.inventory.rocket_silo_modules 
---@field rocket_silo_output defines.inventory.rocket_silo_output 
---@field rocket_silo_result defines.inventory.rocket_silo_result 
---@field rocket_silo_rocket defines.inventory.rocket_silo_rocket 
---@field spider_ammo defines.inventory.spider_ammo 
---@field spider_trash defines.inventory.spider_trash 
---@field spider_trunk defines.inventory.spider_trunk 
---@field turret_ammo defines.inventory.turret_ammo 
defines.inventory={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.logistic_member_index)
---@class defines.logistic_member_index
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.logistic_member_index.character_provider)
---@class defines.logistic_member_index.character_provider : defines.logistic_member_index 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.logistic_member_index.character_requester)
---@class defines.logistic_member_index.character_requester : defines.logistic_member_index 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.logistic_member_index.character_storage)
---@class defines.logistic_member_index.character_storage : defines.logistic_member_index 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.logistic_member_index.generic_on_off_behavior)
---@class defines.logistic_member_index.generic_on_off_behavior : defines.logistic_member_index 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.logistic_member_index.logistic_container)
---@class defines.logistic_member_index.logistic_container : defines.logistic_member_index 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.logistic_member_index.vehicle_storage)
---@class defines.logistic_member_index.vehicle_storage : defines.logistic_member_index 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.logistic_member_index)
---@class defines.logistic_member_index.__index
---@field character_provider defines.logistic_member_index.character_provider 
---@field character_requester defines.logistic_member_index.character_requester 
---@field character_storage defines.logistic_member_index.character_storage 
---@field generic_on_off_behavior defines.logistic_member_index.generic_on_off_behavior 
---@field logistic_container defines.logistic_member_index.logistic_container 
---@field vehicle_storage defines.logistic_member_index.vehicle_storage 
defines.logistic_member_index={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.logistic_mode)
---@class defines.logistic_mode
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.logistic_mode.active_provider)
---@class defines.logistic_mode.active_provider : defines.logistic_mode 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.logistic_mode.buffer)
---@class defines.logistic_mode.buffer : defines.logistic_mode 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.logistic_mode.none)
---@class defines.logistic_mode.none : defines.logistic_mode 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.logistic_mode.passive_provider)
---@class defines.logistic_mode.passive_provider : defines.logistic_mode 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.logistic_mode.requester)
---@class defines.logistic_mode.requester : defines.logistic_mode 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.logistic_mode.storage)
---@class defines.logistic_mode.storage : defines.logistic_mode 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.logistic_mode)
---@class defines.logistic_mode.__index
---@field active_provider defines.logistic_mode.active_provider 
---@field buffer defines.logistic_mode.buffer 
---@field none defines.logistic_mode.none 
---@field passive_provider defines.logistic_mode.passive_provider 
---@field requester defines.logistic_mode.requester 
---@field storage defines.logistic_mode.storage 
defines.logistic_mode={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.mouse_button_type)
---@class defines.mouse_button_type
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.mouse_button_type.left)
---@class defines.mouse_button_type.left : defines.mouse_button_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.mouse_button_type.middle)
---@class defines.mouse_button_type.middle : defines.mouse_button_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.mouse_button_type.none)
---@class defines.mouse_button_type.none : defines.mouse_button_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.mouse_button_type.right)
---@class defines.mouse_button_type.right : defines.mouse_button_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.mouse_button_type)
---@class defines.mouse_button_type.__index
---@field left defines.mouse_button_type.left 
---@field middle defines.mouse_button_type.middle 
---@field none defines.mouse_button_type.none 
---@field right defines.mouse_button_type.right 
defines.mouse_button_type={}
---A dictionary mapping all top-level prototypes by name to a list of their associated subtypes. This list is organized as a lookup table, meaning it maps the sub-prototype names to `0`. As an example, `defines.prototypes['entity']` looks like this: `{furnace=0, inserter=0, container=0, ...}`.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.prototypes)
---@class defines.prototypes
---A dictionary mapping all top-level prototypes by name to a list of their associated subtypes. This list is organized as a lookup table, meaning it maps the sub-prototype names to `0`. As an example, `defines.prototypes['entity']` looks like this: `{furnace=0, inserter=0, container=0, ...}`.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.prototypes)
---@class defines.prototypes.__index: {[string]:{[string]:0}}
defines.prototypes={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rail_connection_direction)
---@class defines.rail_connection_direction
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rail_connection_direction.left)
---@class defines.rail_connection_direction.left : defines.rail_connection_direction 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rail_connection_direction.none)
---@class defines.rail_connection_direction.none : defines.rail_connection_direction 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rail_connection_direction.right)
---@class defines.rail_connection_direction.right : defines.rail_connection_direction 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rail_connection_direction.straight)
---@class defines.rail_connection_direction.straight : defines.rail_connection_direction 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rail_connection_direction)
---@class defines.rail_connection_direction.__index
---@field left defines.rail_connection_direction.left 
---@field none defines.rail_connection_direction.none 
---@field right defines.rail_connection_direction.right 
---@field straight defines.rail_connection_direction.straight 
defines.rail_connection_direction={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rail_direction)
---@class defines.rail_direction
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rail_direction.back)
---@class defines.rail_direction.back : defines.rail_direction 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rail_direction.front)
---@class defines.rail_direction.front : defines.rail_direction 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rail_direction)
---@class defines.rail_direction.__index
---@field back defines.rail_direction.back 
---@field front defines.rail_direction.front 
defines.rail_direction={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_position)
---@class defines.relative_gui_position
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_position.bottom)
---@class defines.relative_gui_position.bottom : defines.relative_gui_position 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_position.left)
---@class defines.relative_gui_position.left : defines.relative_gui_position 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_position.right)
---@class defines.relative_gui_position.right : defines.relative_gui_position 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_position.top)
---@class defines.relative_gui_position.top : defines.relative_gui_position 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_position)
---@class defines.relative_gui_position.__index
---@field bottom defines.relative_gui_position.bottom 
---@field left defines.relative_gui_position.left 
---@field right defines.relative_gui_position.right 
---@field top defines.relative_gui_position.top 
defines.relative_gui_position={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type)
---@class defines.relative_gui_type
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.accumulator_gui)
---@class defines.relative_gui_type.accumulator_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.achievement_gui)
---@class defines.relative_gui_type.achievement_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.additional_entity_info_gui)
---@class defines.relative_gui_type.additional_entity_info_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.admin_gui)
---@class defines.relative_gui_type.admin_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.arithmetic_combinator_gui)
---@class defines.relative_gui_type.arithmetic_combinator_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.armor_gui)
---@class defines.relative_gui_type.armor_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.assembling_machine_gui)
---@class defines.relative_gui_type.assembling_machine_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.assembling_machine_select_recipe_gui)
---@class defines.relative_gui_type.assembling_machine_select_recipe_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.beacon_gui)
---@class defines.relative_gui_type.beacon_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.blueprint_book_gui)
---@class defines.relative_gui_type.blueprint_book_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.blueprint_library_gui)
---@class defines.relative_gui_type.blueprint_library_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.blueprint_setup_gui)
---@class defines.relative_gui_type.blueprint_setup_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.bonus_gui)
---@class defines.relative_gui_type.bonus_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.burner_equipment_gui)
---@class defines.relative_gui_type.burner_equipment_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.car_gui)
---@class defines.relative_gui_type.car_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.constant_combinator_gui)
---@class defines.relative_gui_type.constant_combinator_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.container_gui)
---@class defines.relative_gui_type.container_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.controller_gui)
---@class defines.relative_gui_type.controller_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.decider_combinator_gui)
---@class defines.relative_gui_type.decider_combinator_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.deconstruction_item_gui)
---@class defines.relative_gui_type.deconstruction_item_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.electric_energy_interface_gui)
---@class defines.relative_gui_type.electric_energy_interface_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.electric_network_gui)
---@class defines.relative_gui_type.electric_network_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.entity_variations_gui)
---@class defines.relative_gui_type.entity_variations_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.entity_with_energy_source_gui)
---@class defines.relative_gui_type.entity_with_energy_source_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.equipment_grid_gui)
---@class defines.relative_gui_type.equipment_grid_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.furnace_gui)
---@class defines.relative_gui_type.furnace_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.generic_on_off_entity_gui)
---@class defines.relative_gui_type.generic_on_off_entity_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.heat_interface_gui)
---@class defines.relative_gui_type.heat_interface_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.infinity_pipe_gui)
---@class defines.relative_gui_type.infinity_pipe_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.inserter_gui)
---@class defines.relative_gui_type.inserter_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.item_with_inventory_gui)
---@class defines.relative_gui_type.item_with_inventory_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.lab_gui)
---@class defines.relative_gui_type.lab_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.lamp_gui)
---@class defines.relative_gui_type.lamp_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.linked_container_gui)
---@class defines.relative_gui_type.linked_container_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.loader_gui)
---@class defines.relative_gui_type.loader_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.logistic_gui)
---@class defines.relative_gui_type.logistic_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.market_gui)
---@class defines.relative_gui_type.market_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.mining_drill_gui)
---@class defines.relative_gui_type.mining_drill_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.other_player_gui)
---@class defines.relative_gui_type.other_player_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.permissions_gui)
---@class defines.relative_gui_type.permissions_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.pipe_gui)
---@class defines.relative_gui_type.pipe_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.power_switch_gui)
---@class defines.relative_gui_type.power_switch_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.production_gui)
---@class defines.relative_gui_type.production_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.programmable_speaker_gui)
---@class defines.relative_gui_type.programmable_speaker_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.rail_chain_signal_gui)
---@class defines.relative_gui_type.rail_chain_signal_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.rail_signal_gui)
---@class defines.relative_gui_type.rail_signal_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.reactor_gui)
---@class defines.relative_gui_type.reactor_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.rename_stop_gui)
---@class defines.relative_gui_type.rename_stop_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.resource_entity_gui)
---@class defines.relative_gui_type.resource_entity_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.roboport_gui)
---@class defines.relative_gui_type.roboport_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.rocket_silo_gui)
---@class defines.relative_gui_type.rocket_silo_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.script_inventory_gui)
---@class defines.relative_gui_type.script_inventory_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.server_config_gui)
---@class defines.relative_gui_type.server_config_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.spider_vehicle_gui)
---@class defines.relative_gui_type.spider_vehicle_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.splitter_gui)
---@class defines.relative_gui_type.splitter_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.standalone_character_gui)
---@class defines.relative_gui_type.standalone_character_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.storage_tank_gui)
---@class defines.relative_gui_type.storage_tank_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.tile_variations_gui)
---@class defines.relative_gui_type.tile_variations_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.train_gui)
---@class defines.relative_gui_type.train_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.train_stop_gui)
---@class defines.relative_gui_type.train_stop_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.trains_gui)
---@class defines.relative_gui_type.trains_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.transport_belt_gui)
---@class defines.relative_gui_type.transport_belt_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.upgrade_item_gui)
---@class defines.relative_gui_type.upgrade_item_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type.wall_gui)
---@class defines.relative_gui_type.wall_gui : defines.relative_gui_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.relative_gui_type)
---@class defines.relative_gui_type.__index
---@field accumulator_gui defines.relative_gui_type.accumulator_gui 
---@field achievement_gui defines.relative_gui_type.achievement_gui 
---@field additional_entity_info_gui defines.relative_gui_type.additional_entity_info_gui 
---@field admin_gui defines.relative_gui_type.admin_gui 
---@field arithmetic_combinator_gui defines.relative_gui_type.arithmetic_combinator_gui 
---@field armor_gui defines.relative_gui_type.armor_gui 
---@field assembling_machine_gui defines.relative_gui_type.assembling_machine_gui 
---@field assembling_machine_select_recipe_gui defines.relative_gui_type.assembling_machine_select_recipe_gui 
---@field beacon_gui defines.relative_gui_type.beacon_gui 
---@field blueprint_book_gui defines.relative_gui_type.blueprint_book_gui 
---@field blueprint_library_gui defines.relative_gui_type.blueprint_library_gui 
---@field blueprint_setup_gui defines.relative_gui_type.blueprint_setup_gui 
---@field bonus_gui defines.relative_gui_type.bonus_gui 
---@field burner_equipment_gui defines.relative_gui_type.burner_equipment_gui 
---@field car_gui defines.relative_gui_type.car_gui 
---@field constant_combinator_gui defines.relative_gui_type.constant_combinator_gui 
---@field container_gui defines.relative_gui_type.container_gui 
---@field controller_gui defines.relative_gui_type.controller_gui 
---@field decider_combinator_gui defines.relative_gui_type.decider_combinator_gui 
---@field deconstruction_item_gui defines.relative_gui_type.deconstruction_item_gui 
---@field electric_energy_interface_gui defines.relative_gui_type.electric_energy_interface_gui 
---@field electric_network_gui defines.relative_gui_type.electric_network_gui 
---@field entity_variations_gui defines.relative_gui_type.entity_variations_gui 
---@field entity_with_energy_source_gui defines.relative_gui_type.entity_with_energy_source_gui 
---@field equipment_grid_gui defines.relative_gui_type.equipment_grid_gui 
---@field furnace_gui defines.relative_gui_type.furnace_gui 
---@field generic_on_off_entity_gui defines.relative_gui_type.generic_on_off_entity_gui 
---@field heat_interface_gui defines.relative_gui_type.heat_interface_gui 
---@field infinity_pipe_gui defines.relative_gui_type.infinity_pipe_gui 
---@field inserter_gui defines.relative_gui_type.inserter_gui 
---@field item_with_inventory_gui defines.relative_gui_type.item_with_inventory_gui 
---@field lab_gui defines.relative_gui_type.lab_gui 
---@field lamp_gui defines.relative_gui_type.lamp_gui 
---@field linked_container_gui defines.relative_gui_type.linked_container_gui 
---@field loader_gui defines.relative_gui_type.loader_gui 
---@field logistic_gui defines.relative_gui_type.logistic_gui 
---@field market_gui defines.relative_gui_type.market_gui 
---@field mining_drill_gui defines.relative_gui_type.mining_drill_gui 
---@field other_player_gui defines.relative_gui_type.other_player_gui 
---@field permissions_gui defines.relative_gui_type.permissions_gui 
---@field pipe_gui defines.relative_gui_type.pipe_gui 
---@field power_switch_gui defines.relative_gui_type.power_switch_gui 
---@field production_gui defines.relative_gui_type.production_gui 
---@field programmable_speaker_gui defines.relative_gui_type.programmable_speaker_gui 
---@field rail_chain_signal_gui defines.relative_gui_type.rail_chain_signal_gui 
---@field rail_signal_gui defines.relative_gui_type.rail_signal_gui 
---@field reactor_gui defines.relative_gui_type.reactor_gui 
---@field rename_stop_gui defines.relative_gui_type.rename_stop_gui 
---@field resource_entity_gui defines.relative_gui_type.resource_entity_gui 
---@field roboport_gui defines.relative_gui_type.roboport_gui 
---@field rocket_silo_gui defines.relative_gui_type.rocket_silo_gui 
---@field script_inventory_gui defines.relative_gui_type.script_inventory_gui 
---@field server_config_gui defines.relative_gui_type.server_config_gui 
---@field spider_vehicle_gui defines.relative_gui_type.spider_vehicle_gui 
---@field splitter_gui defines.relative_gui_type.splitter_gui 
---@field standalone_character_gui defines.relative_gui_type.standalone_character_gui 
---@field storage_tank_gui defines.relative_gui_type.storage_tank_gui 
---@field tile_variations_gui defines.relative_gui_type.tile_variations_gui 
---@field train_gui defines.relative_gui_type.train_gui 
---@field train_stop_gui defines.relative_gui_type.train_stop_gui 
---@field trains_gui defines.relative_gui_type.trains_gui 
---@field transport_belt_gui defines.relative_gui_type.transport_belt_gui 
---@field upgrade_item_gui defines.relative_gui_type.upgrade_item_gui 
---@field wall_gui defines.relative_gui_type.wall_gui 
defines.relative_gui_type={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.render_mode)
---@class defines.render_mode
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.render_mode.chart)
---@class defines.render_mode.chart : defines.render_mode 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.render_mode.chart_zoomed_in)
---@class defines.render_mode.chart_zoomed_in : defines.render_mode 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.render_mode.game)
---@class defines.render_mode.game : defines.render_mode 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.render_mode)
---@class defines.render_mode.__index
---@field chart defines.render_mode.chart 
---@field chart_zoomed_in defines.render_mode.chart_zoomed_in 
---@field game defines.render_mode.game 
defines.render_mode={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rich_text_setting)
---@class defines.rich_text_setting
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rich_text_setting.disabled)
---@class defines.rich_text_setting.disabled : defines.rich_text_setting 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rich_text_setting.enabled)
---@class defines.rich_text_setting.enabled : defines.rich_text_setting 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rich_text_setting.highlight)
---@class defines.rich_text_setting.highlight : defines.rich_text_setting 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rich_text_setting)
---@class defines.rich_text_setting.__index
---@field disabled defines.rich_text_setting.disabled 
---@field enabled defines.rich_text_setting.enabled 
---@field highlight defines.rich_text_setting.highlight 
defines.rich_text_setting={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.riding)
---@class defines.riding
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.riding)
---@class defines.riding.__index
defines.riding={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.riding.acceleration)
---@class defines.riding.acceleration
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.riding.acceleration.accelerating)
---@class defines.riding.acceleration.accelerating : defines.riding.acceleration 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.riding.acceleration.braking)
---@class defines.riding.acceleration.braking : defines.riding.acceleration 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.riding.acceleration.nothing)
---@class defines.riding.acceleration.nothing : defines.riding.acceleration 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.riding.acceleration.reversing)
---@class defines.riding.acceleration.reversing : defines.riding.acceleration 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.riding.acceleration)
---@class defines.riding.acceleration.__index
---@field accelerating defines.riding.acceleration.accelerating 
---@field braking defines.riding.acceleration.braking 
---@field nothing defines.riding.acceleration.nothing 
---@field reversing defines.riding.acceleration.reversing 
defines.riding.acceleration={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.riding.direction)
---@class defines.riding.direction
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.riding.direction.left)
---@class defines.riding.direction.left : defines.riding.direction 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.riding.direction.right)
---@class defines.riding.direction.right : defines.riding.direction 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.riding.direction.straight)
---@class defines.riding.direction.straight : defines.riding.direction 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.riding.direction)
---@class defines.riding.direction.__index
---@field left defines.riding.direction.left 
---@field right defines.riding.direction.right 
---@field straight defines.riding.direction.straight 
defines.riding.direction={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rocket_silo_status)
---@class defines.rocket_silo_status
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rocket_silo_status.arms_advance)
---@class defines.rocket_silo_status.arms_advance : defines.rocket_silo_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rocket_silo_status.arms_retract)
---@class defines.rocket_silo_status.arms_retract : defines.rocket_silo_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rocket_silo_status.building_rocket)
---@class defines.rocket_silo_status.building_rocket : defines.rocket_silo_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rocket_silo_status.create_rocket)
---@class defines.rocket_silo_status.create_rocket : defines.rocket_silo_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rocket_silo_status.doors_closing)
---@class defines.rocket_silo_status.doors_closing : defines.rocket_silo_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rocket_silo_status.doors_opened)
---@class defines.rocket_silo_status.doors_opened : defines.rocket_silo_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rocket_silo_status.doors_opening)
---@class defines.rocket_silo_status.doors_opening : defines.rocket_silo_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rocket_silo_status.engine_starting)
---@class defines.rocket_silo_status.engine_starting : defines.rocket_silo_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rocket_silo_status.launch_started)
---@class defines.rocket_silo_status.launch_started : defines.rocket_silo_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rocket_silo_status.launch_starting)
---@class defines.rocket_silo_status.launch_starting : defines.rocket_silo_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rocket_silo_status.lights_blinking_close)
---@class defines.rocket_silo_status.lights_blinking_close : defines.rocket_silo_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rocket_silo_status.lights_blinking_open)
---@class defines.rocket_silo_status.lights_blinking_open : defines.rocket_silo_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rocket_silo_status.rocket_flying)
---@class defines.rocket_silo_status.rocket_flying : defines.rocket_silo_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rocket_silo_status.rocket_ready)
---@class defines.rocket_silo_status.rocket_ready : defines.rocket_silo_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rocket_silo_status.rocket_rising)
---@class defines.rocket_silo_status.rocket_rising : defines.rocket_silo_status 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.rocket_silo_status)
---@class defines.rocket_silo_status.__index
---@field arms_advance defines.rocket_silo_status.arms_advance 
---@field arms_retract defines.rocket_silo_status.arms_retract 
---@field building_rocket defines.rocket_silo_status.building_rocket 
---@field create_rocket defines.rocket_silo_status.create_rocket 
---@field doors_closing defines.rocket_silo_status.doors_closing 
---@field doors_opened defines.rocket_silo_status.doors_opened 
---@field doors_opening defines.rocket_silo_status.doors_opening 
---@field engine_starting defines.rocket_silo_status.engine_starting 
---@field launch_started defines.rocket_silo_status.launch_started 
---@field launch_starting defines.rocket_silo_status.launch_starting 
---@field lights_blinking_close defines.rocket_silo_status.lights_blinking_close 
---@field lights_blinking_open defines.rocket_silo_status.lights_blinking_open 
---@field rocket_flying defines.rocket_silo_status.rocket_flying 
---@field rocket_ready defines.rocket_silo_status.rocket_ready 
---@field rocket_rising defines.rocket_silo_status.rocket_rising 
defines.rocket_silo_status={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.shooting)
---@class defines.shooting
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.shooting.not_shooting)
---@class defines.shooting.not_shooting : defines.shooting 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.shooting.shooting_enemies)
---@class defines.shooting.shooting_enemies : defines.shooting 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.shooting.shooting_selected)
---@class defines.shooting.shooting_selected : defines.shooting 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.shooting)
---@class defines.shooting.__index
---@field not_shooting defines.shooting.not_shooting 
---@field shooting_enemies defines.shooting.shooting_enemies 
---@field shooting_selected defines.shooting.shooting_selected 
defines.shooting={}
---State of an ordinary rail signal.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.signal_state)
---@class defines.signal_state
---Red.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.signal_state.closed)
---@class defines.signal_state.closed : defines.signal_state 
---Green.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.signal_state.open)
---@class defines.signal_state.open : defines.signal_state 
---Orange.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.signal_state.reserved)
---@class defines.signal_state.reserved : defines.signal_state 
---Red - From circuit network.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.signal_state.reserved_by_circuit_network)
---@class defines.signal_state.reserved_by_circuit_network : defines.signal_state 
---State of an ordinary rail signal.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.signal_state)
---@class defines.signal_state.__index
---@field closed defines.signal_state.closed 
---@field open defines.signal_state.open 
---@field reserved defines.signal_state.reserved 
---@field reserved_by_circuit_network defines.signal_state.reserved_by_circuit_network 
defines.signal_state={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.train_state)
---@class defines.train_state
---Braking before a rail signal.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.train_state.arrive_signal)
---@class defines.train_state.arrive_signal : defines.train_state 
---Braking before a station.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.train_state.arrive_station)
---@class defines.train_state.arrive_station : defines.train_state 
---Same as no_path but all candidate train stops are full
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.train_state.destination_full)
---@class defines.train_state.destination_full : defines.train_state 
---Can move if user explicitly sits in and rides the train.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.train_state.manual_control)
---@class defines.train_state.manual_control : defines.train_state 
---Switched to manual control and has to stop.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.train_state.manual_control_stop)
---@class defines.train_state.manual_control_stop : defines.train_state 
---Has no path and is stopped.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.train_state.no_path)
---@class defines.train_state.no_path : defines.train_state 
---Doesn't have anywhere to go.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.train_state.no_schedule)
---@class defines.train_state.no_schedule : defines.train_state 
---Normal state -- following the path.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.train_state.on_the_path)
---@class defines.train_state.on_the_path : defines.train_state 
---Had path and lost it -- must stop.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.train_state.path_lost)
---@class defines.train_state.path_lost : defines.train_state 
---Waiting at a signal.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.train_state.wait_signal)
---@class defines.train_state.wait_signal : defines.train_state 
---Waiting at a station.
---
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.train_state.wait_station)
---@class defines.train_state.wait_station : defines.train_state 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.train_state)
---@class defines.train_state.__index
---@field arrive_signal defines.train_state.arrive_signal 
---@field arrive_station defines.train_state.arrive_station 
---@field destination_full defines.train_state.destination_full 
---@field manual_control defines.train_state.manual_control 
---@field manual_control_stop defines.train_state.manual_control_stop 
---@field no_path defines.train_state.no_path 
---@field no_schedule defines.train_state.no_schedule 
---@field on_the_path defines.train_state.on_the_path 
---@field path_lost defines.train_state.path_lost 
---@field wait_signal defines.train_state.wait_signal 
---@field wait_station defines.train_state.wait_station 
defines.train_state={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.transport_line)
---@class defines.transport_line
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.transport_line.left_line)
---@class defines.transport_line.left_line : defines.transport_line 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.transport_line.left_split_line)
---@class defines.transport_line.left_split_line : defines.transport_line 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.transport_line.left_underground_line)
---@class defines.transport_line.left_underground_line : defines.transport_line 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.transport_line.right_line)
---@class defines.transport_line.right_line : defines.transport_line 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.transport_line.right_split_line)
---@class defines.transport_line.right_split_line : defines.transport_line 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.transport_line.right_underground_line)
---@class defines.transport_line.right_underground_line : defines.transport_line 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.transport_line.secondary_left_line)
---@class defines.transport_line.secondary_left_line : defines.transport_line 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.transport_line.secondary_left_split_line)
---@class defines.transport_line.secondary_left_split_line : defines.transport_line 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.transport_line.secondary_right_line)
---@class defines.transport_line.secondary_right_line : defines.transport_line 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.transport_line.secondary_right_split_line)
---@class defines.transport_line.secondary_right_split_line : defines.transport_line 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.transport_line)
---@class defines.transport_line.__index
---@field left_line defines.transport_line.left_line 
---@field left_split_line defines.transport_line.left_split_line 
---@field left_underground_line defines.transport_line.left_underground_line 
---@field right_line defines.transport_line.right_line 
---@field right_split_line defines.transport_line.right_split_line 
---@field right_underground_line defines.transport_line.right_underground_line 
---@field secondary_left_line defines.transport_line.secondary_left_line 
---@field secondary_left_split_line defines.transport_line.secondary_left_split_line 
---@field secondary_right_line defines.transport_line.secondary_right_line 
---@field secondary_right_split_line defines.transport_line.secondary_right_split_line 
defines.transport_line={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.wire_connection_id)
---@class defines.wire_connection_id
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.wire_connection_id.electric_pole)
---@class defines.wire_connection_id.electric_pole : defines.wire_connection_id 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.wire_connection_id.power_switch_left)
---@class defines.wire_connection_id.power_switch_left : defines.wire_connection_id 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.wire_connection_id.power_switch_right)
---@class defines.wire_connection_id.power_switch_right : defines.wire_connection_id 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.wire_connection_id)
---@class defines.wire_connection_id.__index
---@field electric_pole defines.wire_connection_id.electric_pole 
---@field power_switch_left defines.wire_connection_id.power_switch_left 
---@field power_switch_right defines.wire_connection_id.power_switch_right 
defines.wire_connection_id={}
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.wire_type)
---@class defines.wire_type
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.wire_type.copper)
---@class defines.wire_type.copper : defines.wire_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.wire_type.green)
---@class defines.wire_type.green : defines.wire_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.wire_type.red)
---@class defines.wire_type.red : defines.wire_type 
---[View documentation](https://lua-api.factorio.com/latest/defines.html#defines.wire_type)
---@class defines.wire_type.__index
---@field copper defines.wire_type.copper 
---@field green defines.wire_type.green 
---@field red defines.wire_type.red 
defines.wire_type={}

