Skip to content

Instantly share code, notes, and snippets.

@factubsio
Last active April 27, 2026 08:39
Show Gist options
  • Select an option

  • Save factubsio/92b256b2d14bc04d83b31a164e0a74d8 to your computer and use it in GitHub Desktop.

Select an option

Save factubsio/92b256b2d14bc04d83b31a164e0a74d8 to your computer and use it in GitHub Desktop.
---@class defines_entity_status
---@field working number
---@field no_power number
---@field no_fuel number
---@field no_recipe number
---@field no_input_fluid number
---@field no_research_in_progress number
---@field no_minable_resources number
---@field low_input_fluid number
---@field low_power number
---@field disabled_by_control_behavior number
---@field disabled_by_script number
---@field fluid_ingredient_shortage number
---@field fluid_production_overload number
---@field item_ingredient_shortage number
---@field item_production_overload number
---@field marked_for_deconstruction number
---@field missing_required_fluid number
---@field missing_science_packs number
---@field waiting_for_source_items number
---@field waiting_for_space_in_destination number
---@field waiting_to_launch_rocket number
---@class defines_alert_type
---@field entity_destroyed number
---@field entity_under_attack number
---@field not_enough_construction_robots number
---@field no_material_for_construction number
---@field not_enough_repair_packs number
---@field turret_fire number
---@field custom number
---@field no_storage number
---@field train_out_of_fuel number
---@field fluid_mixing number
---@class defines_gui_type
---@field none number
---@field entity number
---@field research number
---@field controller number
---@field production number
---@field item number
---@field bonus number
---@field trains number
---@field achievement number
---@field blueprint_library number
---@field equipment number
---@field logistic number
---@field other_player number
---@field permissions number
---@field tutorials number
---@field custom number
---@field server_management number
---@field player_management number
---@field tile number
---@class defines_mining_drill
---@field this_miner number
---@field entire_patch number
---@class defines_inventory
---@field fuel number
---@field burnt_result number
---@field chest number
---@field furnace_source number
---@field furnace_result number
---@field furnace_modules number
---@field character_main number
---@field character_guns number
---@field character_ammo number
---@field character_armor number
---@field character_vehicle number
---@field character_trash number
---@field god_main number
---@field editor_main number
---@field editor_guns number
---@field editor_ammo number
---@field editor_armor number
---@field roboport_robot number
---@field roboport_material number
---@field robot_cargo number
---@field robot_repair number
---@field assembling_machine_input number
---@field assembling_machine_output number
---@field assembling_machine_modules number
---@field lab_input number
---@field lab_modules number
---@field mining_drill_modules number
---@field item_main number
---@field rocket_silo_rocket number
---@field rocket_silo_result number
---@field rocket number
---@field car_trunk number
---@field car_ammo number
---@field cargo_wagon number
---@field turret_ammo number
---@field beacon_modules number
---@field character_corpse number
---@field artillery_turret_ammo number
---@field artillery_wagon_ammo number
---@class defines_transport_line
---@field left_line number
---@field right_line number
---@field left_underground_line number
---@field right_underground_line number
---@field secondary_left_line number
---@field secondary_right_line number
---@field left_split_line number
---@field right_split_line number
---@field secondary_left_split_line number
---@field secondary_right_split_line number
---@class defines_controllers
---@field ghost number
---@field character number
---@field god number
---@field editor number
---@field cutscene number
---@field spectator number
---@class defines_circuit_condition_index
---@field inserter_circuit number
---@field inserter_logistic number
---@field lamp number
---@field arithmetic_combinator number
---@field decider_combinator number
---@field constant_combinator number
---@field offshore_pump number
---@field pump number
---@class defines_circuit_mode_of_operation
---@field use_colors number
---@class defines_command
---@field attack number
---@field go_to_location number
---@field compound number
---@field group number
---@field attack_area number
---@field wander number
---@field flee number
---@field stop number
---@field build_base number
---@class defines_compound_command
---@field logical_and number
---@field logical_or number
---@field return_last number
---@class defines_type
---@field container number
---@field generic_on_off number
---@field inserter number
---@field lamp number
---@field logistic_container number
---@field roboport number
---@field storage_tank number
---@field train_stop number
---@field decider_combinator number
---@field arithmetic_combinator number
---@field constant_combinator number
---@field transport_belt number
---@field accumulator number
---@field rail_signal number
---@field rail_chain_signal number
---@field wall number
---@field mining_drill number
---@field programmable_speaker number
---@class defines_wire_type
---@field red number
---@field green number
---@field copper number
---@class defines_wire_connection_id
---@field electric_pole number
---@field power_switch_left number
---@field power_switch_right number
---@class defines_rich_text_setting
---@field enabled number
---@field disabled number
---@field highlight number
---@class defines_train_state
---@field on_the_path number
---@field path_lost number
---@field no_schedule number
---@field no_path number
---@field arrive_signal number
---@field wait_signal number
---@field arrive_station number
---@field wait_station number
---@field manual_control_stop number
---@field manual_control number
---@class defines_behavior_result
---@field in_progress number
---@field fail number
---@field success number
---@field deleted number
---@class defines_direction
---@field left number
---@field straight number
---@field right number
---@class defines_signal_state
---@field open number
---@field closed number
---@field reserved number
---@field reserved_by_circuit_network number
---@class defines_shooting
---@field not_shooting number
---@field shooting_enemies number
---@field shooting_selected number
---@class defines_logistic_container
---@field send_contents number
---@field set_requests number
---@class defines_difficulty
---@field easy number
---@field normal number
---@field hard number
---@class defines_acceleration
---@field nothing number
---@field accelerating number
---@field braking number
---@field reversing number
---@class defines_render_mode
---@field game number
---@field chart number
---@field chart_zoomed_in number
---@class defines_riding
---@field nothing number
---@field accelerating number
---@field braking number
---@field reversing number
---@field left number
---@field straight number
---@field right number
---@class defines_group_state
---@field gathering number
---@field moving number
---@field attacking_distraction number
---@field attacking_target number
---@field finished number
---@field pathfinding number
---@field wander_in_group number
---@class defines_inserter
---@field none number
---@field enable_disable number
---@field set_filters number
---@field read_hand_contents number
---@field set_stack_size number
---@field hold number
---@field pulse number
---@class defines_hand_read_mode
---@field hold number
---@field pulse number
---@class defines_tile_selection_mode
---@field normal number
---@field always number
---@field never number
---@field only number
---@class defines_lamp
---@field use_colors number
---@class defines_transport_belt
---@field pulse number
---@field hold number
---@class defines_rail_connection_direction
---@field left number
---@field straight number
---@field right number
---@field none number
---@class defines_difficulty_settings
---@field normal number
---@field expensive number
---@field normal number
---@field expensive number
---@class defines_mouse_button_type
---@field none number
---@field left number
---@field right number
---@field middle number
---@class defines_logistic_mode
---@field none number
---@field active_provider number
---@field storage number
---@field requester number
---@field passive_provider number
---@field buffer number
---@class defines_control_behavior
---@field none number
---@field enable_disable number
---@field set_filters number
---@field read_hand_contents number
---@field set_stack_size number
---@field hold number
---@field pulse number
---@field send_contents number
---@field set_requests number
---@field use_colors number
---@field this_miner number
---@field entire_patch number
---@field pulse number
---@field hold number
---@field container number
---@field generic_on_off number
---@field inserter number
---@field lamp number
---@field logistic_container number
---@field roboport number
---@field storage_tank number
---@field train_stop number
---@field decider_combinator number
---@field arithmetic_combinator number
---@field constant_combinator number
---@field transport_belt number
---@field accumulator number
---@field rail_signal number
---@field rail_chain_signal number
---@field wall number
---@field mining_drill number
---@field programmable_speaker number
---@class defines_circuit_connector_id
---@field accumulator number
---@field constant_combinator number
---@field container number
---@field programmable_speaker number
---@field rail_signal number
---@field rail_chain_signal number
---@field roboport number
---@field storage_tank number
---@field wall number
---@field electric_pole number
---@field inserter number
---@field lamp number
---@field combinator_input number
---@field combinator_output number
---@field offshore_pump number
---@field pump number
---@class defines_content_read_mode
---@field pulse number
---@field hold number
---@class defines_chain_signal_state
---@field none number
---@field all_open number
---@field partially_open number
---@field none_open number
---@class defines_deconstruction_item
---@field whitelist number
---@field blacklist number
---@field whitelist number
---@field blacklist number
---@field normal number
---@field always number
---@field never number
---@field only number
---@class defines_logistic_member_index
---@field logistic_container number
---@field vehicle_storage number
---@field character_requester number
---@field character_storage number
---@field character_provider number
---@field generic_on_off_behavior number
---@class defines_build_check_type
---@field script number
---@field manual number
---@field ghost_place number
---@field ghost_revive number
---@class defines_distraction
---@field none number
---@field by_enemy number
---@field by_anything number
---@field by_damage number
---@class defines_tile_filter_mode
---@field whitelist number
---@field blacklist number
---@class defines_entity_filter_mode
---@field whitelist number
---@field blacklist number
---@class defines_flow_precision_index
---@field one_second number
---@field one_minute number
---@field ten_minutes number
---@field one_hour number
---@field ten_hours number
---@field fifty_hours number
---@field two_hundred_fifty_hours number
---@field one_thousand_hours number
---@class defines_chunk_generated_status
---@field nothing number
---@field custom_tiles number
---@field basic_tiles number
---@field corrected_tiles number
---@field tiles number
---@field entities number
---@class defines_events
---@field on_tick number
---@field on_gui_click number
---@field on_gui_confirmed number
---@field on_gui_text_changed number
---@field on_gui_checked_state_changed number
---@field on_entity_died number
---@field on_post_entity_died number
---@field on_entity_damaged number
---@field on_picked_up_item number
---@field on_built_entity number
---@field on_sector_scanned number
---@field on_player_mined_item number
---@field on_put_item number
---@field on_rocket_launched number
---@field on_pre_player_mined_item number
---@field on_chunk_generated number
---@field on_player_crafted_item number
---@field on_robot_built_entity number
---@field on_robot_pre_mined number
---@field on_robot_mined number
---@field on_research_started number
---@field on_research_finished number
---@field on_player_rotated_entity number
---@field on_marked_for_deconstruction number
---@field on_cancelled_deconstruction number
---@field on_trigger_created_entity number
---@field on_trigger_fired_artillery number
---@field on_train_changed_state number
---@field on_player_created number
---@field on_resource_depleted number
---@field on_player_driving_changed_state number
---@field on_force_created number
---@field on_forces_merging number
---@field on_player_cursor_stack_changed number
---@field on_pre_entity_settings_pasted number
---@field on_entity_settings_pasted number
---@field on_player_main_inventory_changed number
---@field on_player_armor_inventory_changed number
---@field on_player_ammo_inventory_changed number
---@field on_player_gun_inventory_changed number
---@field on_player_placed_equipment number
---@field on_player_removed_equipment number
---@field on_pre_player_died number
---@field on_player_died number
---@field on_player_respawned number
---@field on_player_joined_game number
---@field on_player_left_game number
---@field on_player_built_tile number
---@field on_player_mined_tile number
---@field on_robot_built_tile number
---@field on_robot_mined_tile number
---@field on_player_selected_area number
---@field on_player_alt_selected_area number
---@field on_player_changed_surface number
---@field on_selected_entity_changed number
---@field on_market_item_purchased number
---@field on_player_dropped_item number
---@field on_biter_base_built number
---@field on_player_changed_force number
---@field on_entity_renamed number
---@field on_gui_selection_state_changed number
---@field on_runtime_mod_setting_changed number
---@field on_difficulty_settings_changed number
---@field on_surface_created number
---@field on_surface_deleted number
---@field on_pre_surface_deleted number
---@field on_player_mined_entity number
---@field on_robot_mined_entity number
---@field on_train_created number
---@field on_gui_elem_changed number
---@field on_player_setup_blueprint number
---@field on_player_deconstructed_area number
---@field on_player_configured_blueprint number
---@field on_console_chat number
---@field on_console_command number
---@field on_player_removed number
---@field on_pre_player_removed number
---@field on_player_used_capsule number
---@field script_raised_built number
---@field script_raised_destroy number
---@field script_raised_revive number
---@field script_raised_set_tiles number
---@field on_player_promoted number
---@field on_player_demoted number
---@field on_combat_robot_expired number
---@field on_player_changed_position number
---@field on_mod_item_opened number
---@field on_gui_opened number
---@field on_gui_closed number
---@field on_gui_value_changed number
---@field on_player_muted number
---@field on_player_unmuted number
---@field on_player_cheat_mode_enabled number
---@field on_player_cheat_mode_disabled number
---@field on_character_corpse_expired number
---@field on_pre_ghost_deconstructed number
---@field on_player_pipette number
---@field on_player_display_resolution_changed number
---@field on_player_display_scale_changed number
---@field on_pre_player_crafted_item number
---@field on_player_cancelled_crafting number
---@field on_chunk_charted number
---@field on_technology_effects_reset number
---@field on_force_reset number
---@field on_land_mine_armed number
---@field on_forces_merged number
---@field on_player_trash_inventory_changed number
---@field on_pre_player_left_game number
---@field on_pre_surface_cleared number
---@field on_surface_cleared number
---@field on_chunk_deleted number
---@field on_pre_chunk_deleted number
---@field on_train_schedule_changed number
---@field on_player_banned number
---@field on_player_kicked number
---@field on_player_unbanned number
---@field on_rocket_launch_ordered number
---@field on_script_path_request_finished number
---@field on_ai_command_completed number
---@field on_marked_for_upgrade number
---@field on_cancelled_upgrade number
---@field on_player_toggled_map_editor number
---@field on_entity_cloned number
---@field on_area_cloned number
---@field on_brush_cloned number
---@field on_game_created_from_scenario number
---@field on_surface_imported number
---@field on_surface_renamed number
---@field on_player_toggled_alt_mode number
---@field on_player_repaired_entity number
---@field on_player_fast_transferred number
---@field on_pre_robot_exploded_cliff number
---@field on_robot_exploded_cliff number
---@field on_entity_spawned number
---@field on_cutscene_waypoint_reached number
---@field on_unit_group_created number
---@field on_unit_added_to_group number
---@field on_unit_removed_from_group number
---@field on_unit_group_finished_gathering number
---@field on_build_base_arrived number
---@field on_chart_tag_added number
---@field on_chart_tag_modified number
---@field on_chart_tag_removed number
---@field on_lua_shortcut number
---@field on_gui_location_changed number
---@field on_gui_selected_tab_changed number
---@field on_gui_switch_state_changed number
---@field on_force_cease_fire_changed number
---@field on_force_friends_changed number
---@field on_string_translated number
---@field on_script_trigger_effect number
---@field on_player_set_quick_bar_slot number
---@field on_pre_player_toggled_map_editor number
---@field on_pre_script_inventory_resized number
---@field on_script_inventory_resized number
---@class defines_technology_difficulty
---@field normal number
---@field expensive number
---@class defines_input_action
---@field activate_copy number
---@field activate_cut number
---@field activate_paste number
---@field add_permission_group number
---@field add_train_station number
---@field admin_action number
---@field alt_select_area number
---@field alt_select_blueprint_entities number
---@field alternative_copy number
---@field begin_mining number
---@field begin_mining_terrain number
---@field build_item number
---@field build_rail number
---@field build_terrain number
---@field cancel_craft number
---@field cancel_deconstruct number
---@field cancel_new_blueprint number
---@field cancel_research number
---@field cancel_upgrade number
---@field change_active_character_tab number
---@field change_active_item_group_for_crafting number
---@field change_active_item_group_for_filters number
---@field change_active_quick_bar number
---@field change_arithmetic_combinator_parameters number
---@field change_blueprint_book_record_label number
---@field change_decider_combinator_parameters number
---@field change_item_label number
---@field change_multiplayer_config number
---@field change_picking_state number
---@field change_programmable_speaker_alert_parameters number
---@field change_programmable_speaker_circuit_parameters number
---@field change_programmable_speaker_parameters number
---@field change_riding_state number
---@field change_shooting_state number
---@field change_train_stop_station number
---@field change_train_wait_condition number
---@field change_train_wait_condition_data number
---@field clean_cursor_stack number
---@field clear_selected_blueprint number
---@field clear_selected_deconstruction_item number
---@field clear_selected_upgrade_item number
---@field connect_rolling_stock number
---@field copy number
---@field copy_entity_settings number
---@field craft number
---@field create_blueprint_like number
---@field cursor_split number
---@field cursor_transfer number
---@field custom_input number
---@field cycle_blueprint_book_backwards number
---@field cycle_blueprint_book_forwards number
---@field deconstruct number
---@field delete_blueprint_library number
---@field delete_blueprint_record number
---@field delete_custom_tag number
---@field delete_permission_group number
---@field destroy_opened_item number
---@field disconnect_rolling_stock number
---@field drag_train_schedule number
---@field drag_train_wait_condition number
---@field drop_blueprint_record number
---@field drop_item number
---@field drop_to_blueprint_book number
---@field edit_custom_tag number
---@field edit_permission_group number
---@field export_blueprint number
---@field fast_entity_split number
---@field fast_entity_transfer number
---@field go_to_train_station number
---@field grab_blueprint_record number
---@field gui_checked_state_changed number
---@field gui_click number
---@field gui_confirmed number
---@field gui_elem_changed number
---@field gui_location_changed number
---@field gui_selected_tab_changed number
---@field gui_selection_state_changed number
---@field gui_switch_state_changed number
---@field gui_text_changed number
---@field gui_value_changed number
---@field import_blueprint number
---@field import_blueprint_string number
---@field import_permissions_string number
---@field inventory_split number
---@field inventory_transfer number
---@field launch_rocket number
---@field lua_shortcut number
---@field map_editor_action number
---@field market_offer number
---@field mod_settings_changed number
---@field open_achievements_gui number
---@field open_blueprint_library_gui number
---@field open_blueprint_record number
---@field open_bonus_gui number
---@field open_character_gui number
---@field open_equipment number
---@field open_gui number
---@field open_item number
---@field open_logistic_gui number
---@field open_mod_item number
---@field open_production_gui number
---@field open_technology_gui number
---@field open_train_gui number
---@field open_train_station_gui number
---@field open_trains_gui number
---@field open_tutorials_gui number
---@field paste_entity_settings number
---@field place_equipment number
---@field quick_bar_pick_slot number
---@field quick_bar_set_selected_page number
---@field quick_bar_set_slot number
---@field remove_cables number
---@field remove_train_station number
---@field reset_assembling_machine number
---@field rotate_entity number
---@field select_area number
---@field select_blueprint_entities number
---@field select_entity_slot number
---@field select_item number
---@field select_mapper_slot number
---@field select_next_valid_gun number
---@field select_tile_slot number
---@field set_auto_launch_rocket number
---@field set_autosort_inventory number
---@field set_behavior_mode number
---@field set_car_weapons_control number
---@field set_circuit_condition number
---@field set_circuit_mode_of_operation number
---@field set_controller_logistic_slot_count number
---@field set_deconstruction_item_tile_selection_mode number
---@field set_deconstruction_item_trees_and_rocks_only number
---@field set_entity_color number
---@field set_entity_energy_property number
---@field set_filter number
---@field set_heat_interface_mode number
---@field set_heat_interface_temperature number
---@field set_infinity_container_filter_item number
---@field set_infinity_container_remove_unfiltered_items number
---@field set_infinity_pipe_filter number
---@field set_inserter_max_stack_size number
---@field set_inventory_bar number
---@field set_logistic_filter_item number
---@field set_logistic_filter_signal number
---@field set_logistic_trash_filter_item number
---@field set_player_color number
---@field set_request_from_buffers number
---@field set_research_finished_stops_game number
---@field set_signal number
---@field set_splitter_priority number
---@field set_train_stopped number
---@field setup_assembling_machine number
---@field setup_blueprint number
---@field setup_single_blueprint_record number
---@field smart_pipette number
---@field stack_split number
---@field stack_transfer number
---@field start_repair number
---@field start_research number
---@field start_walking number
---@field stop_building_by_moving number
---@field switch_connect_to_logistic_network number
---@field switch_constant_combinator_state number
---@field switch_inserter_filter_mode_state number
---@field switch_power_switch_state number
---@field switch_to_rename_stop_gui number
---@field take_equipment number
---@field toggle_deconstruction_item_entity_filter_mode number
---@field toggle_deconstruction_item_tile_filter_mode number
---@field toggle_driving number
---@field toggle_enable_vehicle_logistics_while_moving number
---@field toggle_equipment_movement_bonus number
---@field toggle_map_editor number
---@field toggle_personal_logistic_requests number
---@field toggle_personal_roboport number
---@field toggle_show_entity_info number
---@field translate_string number
---@field undo number
---@field upgrade number
---@field upgrade_opened_blueprint number
---@field use_artillery_remote number
---@field use_item number
---@field wire_dragging number
---@field write_to_console number
---@class defines_recipe_difficulty
---@field normal number
---@field expensive number
---@class defines_resource_read_mode
---@field this_miner number
---@field entire_patch number
---@class defines_rail_direction
---@field front number
---@field back number
---@class defines
---@field entity_status defines_entity_status
---@field alert_type defines_alert_type
---@field gui_type defines_gui_type
---@field mining_drill defines_mining_drill
---@field inventory defines_inventory
---@field transport_line defines_transport_line
---@field controllers defines_controllers
---@field circuit_condition_index defines_circuit_condition_index
---@field circuit_mode_of_operation defines_circuit_mode_of_operation
---@field command defines_command
---@field compound_command defines_compound_command
---@field type defines_type
---@field wire_type defines_wire_type
---@field wire_connection_id defines_wire_connection_id
---@field rich_text_setting defines_rich_text_setting
---@field train_state defines_train_state
---@field behavior_result defines_behavior_result
---@field direction defines_direction
---@field signal_state defines_signal_state
---@field shooting defines_shooting
---@field logistic_container defines_logistic_container
---@field difficulty defines_difficulty
---@field acceleration defines_acceleration
---@field render_mode defines_render_mode
---@field riding defines_riding
---@field group_state defines_group_state
---@field inserter defines_inserter
---@field hand_read_mode defines_hand_read_mode
---@field tile_selection_mode defines_tile_selection_mode
---@field lamp defines_lamp
---@field transport_belt defines_transport_belt
---@field rail_connection_direction defines_rail_connection_direction
---@field difficulty_settings defines_difficulty_settings
---@field mouse_button_type defines_mouse_button_type
---@field logistic_mode defines_logistic_mode
---@field control_behavior defines_control_behavior
---@field circuit_connector_id defines_circuit_connector_id
---@field content_read_mode defines_content_read_mode
---@field chain_signal_state defines_chain_signal_state
---@field deconstruction_item defines_deconstruction_item
---@field logistic_member_index defines_logistic_member_index
---@field build_check_type defines_build_check_type
---@field distraction defines_distraction
---@field tile_filter_mode defines_tile_filter_mode
---@field entity_filter_mode defines_entity_filter_mode
---@field flow_precision_index defines_flow_precision_index
---@field chunk_generated_status defines_chunk_generated_status
---@field events defines_events
---@field technology_difficulty defines_technology_difficulty
---@field input_action defines_input_action
---@field recipe_difficulty defines_recipe_difficulty
---@field resource_read_mode defines_resource_read_mode
---@field rail_direction defines_rail_direction
---@alias float number
---@alias int number
---@alias int8 number
---@alias int16 number
---@alias int32 number
---@alias int64 number
---@alias uint number
---@alias uint8 number
---@alias uint16 number
---@alias uint32 number
---@alias uint64 number
---@alias LocalisedString string|string[]
---@alias double number
---@alias CollisionLayerMask string
---@class WaitCondition
---@field type string
---@field ticks uint
---@field compare_type string
---@field condition CircuitCondition
---@class TrainSchedule
---@field current uint
---@field records TrainScheduleRecord[]
---@class Filter
---@field index uint
---@field name string
---@class OldTileAndPosition
---@field old_tile LuaTilePrototype
---@field position TilePosition
---@class TrainScheduleRecord
---@field temporary boolean
---@field station string
---@field rail LuaEntity
---@field wait_conditions WaitCondition[]
---@class ColorAsStruct
---@field g float
---@field b float
---@field a float
---@field r float
---@alias ItemStackSpecification string|SimpleItemStackAsStruct|LuaItemStack
---@class PlaceAsTileResult
---@field condition_size uint
---@field condition table
---@field result LuaTilePrototype
---@class ModConfigurationChangedData
---@field new_version string
---@field old_version string
---@class InfinityPipeFilter
---@field percentage double
---@field name string
---@field temperature double
---@field mode string
---@class ScriptRenderTarget
---@field entity_offset Vector
---@field position Position
---@field entity LuaEntity
---@class Product
---@field probability double
---@field name string
---@field amount double
---@field amount_max uint
---@field catalyst_amount uint
---@field amount_min uint
---@field type string
---@field temperature double
---@alias ColorModifier ColorAsRGB|ColorAsRGBA|ColorAsStruct
---@class ConfigurationChangedData
---@field migration_applied boolean
---@field mod_startup_settings_changed boolean
---@field old_version string
---@field new_version string
---@field mod_changes table<string, ModConfigurationChangedData>
---@alias Vector number[]
---@class TileProperties
---@field temperature double
---@field available_water double
---@field roughness double
---@field elevation double
---@field tier_from_start double
---@alias TriggerTargetMask table<string, boolean>
---@alias BoundingBox BoundingBoxAsArray|BoundingBoxAsStruct
---@alias Color ColorAsRGB|ColorAsRGBA|ColorAsStruct
---@alias SurfaceSpecification uint|string|LuaSurface
---@class Loot
---@field probability double
---@field count_max double
---@field count_min double
---@field item string
---@class Ingredient
---@field name string
---@field amount double
---@field maximum_temperature double
---@field minimum_temperature double
---@field type string
---@field catalyst_amount uint
---@alias CliffOrientation string
---@alias TechnologySpecification string|LuaTechnology|LuaTechnologyPrototype
---@class DeciderCombinatorParameters
---@field comparator ComparatorString
---@field second_signal SignalID
---@field constant uint
---@field first_signal SignalID
---@field output_signal SignalID
---@field copy_count_from_input boolean
---@alias CursorBoxRenderType string
---@alias MouseButtonFlags table<string, boolean>
---@class EffectValue
---@field bonus float
---@class HeatSetting
---@field temperature double
---@field mode string
---@class RidingState
---@field direction defines_riding_direction
---@field acceleration defines_riding_acceleration
---@alias ColorAsRGBA number[]
---@alias alignment string
---@class AmmoType
---@field target_type string
---@field clamp_position boolean
---@field energy_consumption double
---@field category string
---@field action TriggerItem
---@class ProgrammableSpeakerInstrument
---@field notes string[]
---@field name string
---@alias SimpleItemStack string|SimpleItemStackAsStruct
---@class ProgrammableSpeakerAlertParameters
---@field alert_message string
---@field icon_signal_id SignalID
---@field show_on_map boolean
---@field show_alert boolean
---@alias ChunkPosition Position
---@class Resistances
---@field percent float
---@field decrease float
---@alias ItemPrototypeSpecification LuaItemStack|LuaItemPrototype|string
---@class LogisticFilter
---@field index uint
---@field name string
---@field count uint
---@alias SpritePath string
---@alias Trigger TriggerItem[]
---@class MapViewSettings
---@field show-logistic-network boolean
---@field show-non-standard-map-info boolean
---@field show-networkless-logistic-members boolean
---@field show-turret-range boolean
---@field show-electric-network boolean
---@field show-player-names boolean
---@field show-train-station-names boolean
---@field show-pollution boolean
---@class DifficultySettings
---@field research_queue_setting string
---@field recipe_difficulty defines_difficulty_settings_recipe_difficulty
---@field technology_price_multiplier uint
---@field technology_difficulty defines_difficulty_settings_technology_difficulty
---@class CapsuleAction
---@field equipment string
---@field attack_parameters AttackParameters
---@field type string
---@alias TilePosition Position
---@class AttackParameters
---@field ammo_type AmmoType
---@field warmup uint
---@field movement_slow_down_factor double
---@field min_attack_distance float
---@field ammo_categories string[]
---@field range float
---@field min_range float
---@field fire_penalty float
---@field movement_slow_down_cooldown float
---@field cooldown float
---@field turn_range float
---@field damage_modifier float
---@field ammo_consumption_modifier float
---@class UpgradeFilter
---@field type string
---@field name string
---@alias CollisionMask table<CollisionMaskLayer, boolean>
---@class TriggerEffectItem
---@field affects_target boolean
---@field show_in_tooltip boolean
---@field type string
---@field repeat_count uint
---@class ScriptArea
---@field id uint
---@field area BoundingBox
---@field color Color
---@field name string
---@class TriggerDelivery
---@field target_effects TriggerEffectItem[]
---@field source_effects TriggerEffectItem[]
---@field type string
---@alias CollisionMaskWithFlags CollisionMask
---@class TriggerItem
---@field repeat_count uint
---@field trigger_target_mask TriggerTargetMask
---@field type string
---@field force ForceCondition
---@field collision_mask CollisionMask
---@field action_delivery TriggerDelivery[]
---@field source_effects TriggerEffectItem[]
---@field entity_flags EntityPrototypeFlags
---@field ignore_collision_condition boolean
---@class BeamTarget
---@field position Position
---@field entity LuaEntity
---@alias EntityPrototypeFlags table<string, boolean>
---@class NthTickEvent
---@field tick uint
---@field nth_tick uint
---@class Fluid
---@field name string
---@field amount double
---@field temperature double
---@class ScriptPosition
---@field id uint
---@field name string
---@field color Color
---@field position Position
---@class SmokeSource
---@field height float
---@field south_position Vector
---@field deviation Position
---@field west_position Vector
---@field starting_frame_deviation double
---@field starting_frame_speed uint16
---@field slow_down_factor uint8
---@field starting_frame uint16
---@field height_deviation float
---@field starting_frame_speed_deviation double
---@field starting_vertical_speed float
---@field vertical_speed_slowdown float
---@field name string
---@field starting_vertical_speed_deviation float
---@field north_position Vector
---@field position Vector
---@field offset double
---@field east_position Vector
---@field frequency double
---@alias SoundPath string
---@class DisplayResolution
---@field width uint
---@field height uint
---@class GameViewSettings
---@field show_quickbar boolean
---@field update_entity_selection boolean
---@field show_controller_gui boolean
---@field show_entity_info boolean
---@field show_rail_block_visualisation boolean
---@field show_research_info boolean
---@field show_shortcut_bar boolean
---@field show_minimap boolean
---@field show_alert_gui boolean
---@field show_side_menu boolean
---@field show_map_view_options boolean
---@class CircuitCondition
---@field comparator ComparatorString
---@field first_signal SignalID
---@field constant int
---@field second_signal SignalID
---@alias Tags table
---@alias Position PositionArray|PositionStruct
---@class BoundingBoxAsStruct
---@field left_top Position
---@field right_bottom Position
---@alias ItemPrototypeFlags table<string, boolean>
---@alias PositionArray float[]
---@alias ForceCondition string
---@alias GuiLocation Position
---@alias PlayerSpecification uint|string|LuaPlayer
---@class PositionStruct
---@field y float
---@field x float
---@class PathfindFlags
---@field no_break boolean
---@field low_priority boolean
---@field cache boolean
---@field allow_destroy_friendly_entities double
---@field allow_paths_through_own_entities double
---@field prefer_straight_paths boolean
---@class FluidBoxConnection
---@field positions Vector[]
---@field type string
---@field max_underground_distance uint
---@class ConstantCombinatorParameters
---@field count int
---@field signal SignalID
---@field index uint
---@alias ComparatorString string
---@alias EntityPrototypeSpecificatipon LuaEntity|LuaEntityPrototype|string
---@class ProgrammableSpeakerParameters
---@field playback_globally boolean
---@field playback_volume double
---@field allow_polyphony boolean
---@class PersonalLogisticsParameters
---@field name string
---@field max uint
---@field min uint
---@class Offer
---@field offer Modifier
---@field price Ingredient[]
---@class SignalID
---@field type string
---@field name string
---@alias RenderLayer string
---@alias ForceSpecification string|LuaForce
---@class ProgrammableSpeakerCircuitParameters
---@field note_id uint
---@field signal_value_is_pitch boolean
---@field instrument_id uint
---@class SimpleItemStackAsStruct
---@field health float
---@field tags string
---@field count uint
---@field ammo double
---@field durability double
---@field name string
---@alias SelectionModeFlags table<string, boolean>
---@alias BoundingBoxAsArray Position[]
---@class CircuitConditionSpecification
---@field fulfilled boolean
---@field condition CircuitCondition
---@alias ColorAsRGB number[]
---@class InfinityInventoryFilter
---@field count uint
---@field name string
---@field index uint
---@field mode string
---@class ArithmeticCombinatorParameters
---@field second_signal SignalID
---@field second_constant int
---@field first_constant int
---@field first_signal SignalID
---@field output_signal SignalID
---@field operation string
---@class ChunkPositionAndArea
---@field x int
---@field y int
---@field area BoundingBox
---@class PathFindFlags
---@field no_break boolean
---@field low_priority boolean
---@field cache boolean
---@field allow_destroy_friendly_entities boolean
---@field allow_paths_through_own_entities boolean
---@field prefer_straight_paths boolean
---@class LuaCustomTable
---@field help fun():string
---@field valid boolean
---@class __LuaGameScript__purge_player__PlayerSpecification
---@class LuaBurner
---@field remaining_burning_fuel double
---@field fuel_categories table<string, string>
---@field valid boolean
---@field currently_burning LuaItemPrototype
---@field owner LuaEntity
---@field inventory LuaInventory
---@field heat_capacity double
---@field help fun():string
---@field heat double
---@field burnt_result_inventory LuaInventory
---@class LuaProgrammableSpeakerControlBehavior
---@field circuit_parameters ProgrammableSpeakerCircuitParameters
---@field valid boolean
---@field help fun():string
---@field circuit_condition CircuitConditionSpecification
---@class LuaGroup
---@field group LuaGroup
---@field subgroups LuaGroup[]
---@field help fun():string
---@field localised_name LocalisedString
---@field type string
---@field order_in_recipe string
---@field valid boolean
---@field name string
---@field order string
---@class LuaInserterControlBehavior
---@field circuit_set_stack_size boolean
---@field circuit_hand_read_mode defines_control_behavior_inserter_hand_read_mode
---@field help fun():string
---@field circuit_stack_control_signal SignalID
---@field valid boolean
---@field circuit_read_hand_contents boolean
---@field circuit_mode_of_operation defines_control_behavior_inserter_circuit_mode_of_operation
---@class __LuaFlowStatistics__set_output_count__count
---@class LuaFluidBoxPrototype
---@field height double
---@field pipe_connections FluidBoxConnection[]
---@field production_type string
---@field index uint
---@field secondary_draw_orders int[]
---@field help fun():string
---@field base_area double
---@field valid boolean
---@field render_layer string
---@field filter LuaFluidPrototype
---@field maximum_temperature double
---@field minimum_temperature double
---@field volume double
---@field base_level double
---@field entity LuaEntityPrototype
---@class LuaLogisticContainerControlBehavior
---@field circuit_mode_of_operation defines_control_behavior_logistic_container_circuit_mode_of_operation
---@field valid boolean
---@field help fun():string
---@class LuaTechnologyPrototype
---@field research_unit_energy double
---@field prerequisites table<string, string>
---@field help fun():string
---@field upgrade boolean
---@field valid boolean
---@field research_unit_count_formula string
---@field localised_description LocalisedString
---@field order string
---@field max_level uint
---@field research_unit_ingredients Ingredient[]
---@field hidden boolean
---@field localised_name LocalisedString
---@field visible_when_disabled boolean
---@field effects Modifier[]
---@field name string
---@field level uint
---@field research_unit_count uint
---@field enabled boolean
---@class LuaTrivialSmokePrototype
---@field glow_fade_away_duration uint
---@field help fun():string
---@field render_layer RenderLayer
---@field valid boolean
---@field glow_animation boolean
---@field fade_in_duration uint
---@field localised_description LocalisedString
---@field order string
---@field end_scale double
---@field movement_slow_down_factor double
---@field affected_by_wind boolean
---@field localised_name LocalisedString
---@field spread_duration uint
---@field name string
---@field show_when_smoke_off boolean
---@field fade_away_duration uint
---@field start_scale double
---@field cyclic boolean
---@field duration uint
---@field color Color
---@class LuaFlowStatistics
---@field get_input_count fun(string:__LuaFlowStatistics__get_input_count__string):uint64
---@field clear fun()
---@field set_output_count fun(string:uint64,count:__LuaFlowStatistics__set_output_count__count)
---@field set_input_count fun(string:uint64,count:__LuaFlowStatistics__set_input_count__count)
---@field valid boolean
---@field get_output_count fun(string:__LuaFlowStatistics__get_output_count__string):uint64
---@field get_flow_count any
---@field help fun():string
---@field force LuaForce
---@field output_counts table<string, string>
---@field input_counts table<string, string>
---@field on_flow fun(string:float,count:__LuaFlowStatistics__on_flow__count)
---@class LuaParticlePrototype
---@field ended_in_water_trigger_effect TriggerEffectItem
---@field movement_modifier float
---@field life_time uint
---@field render_layer RenderLayer
---@field localised_name LocalisedString
---@field help fun():string
---@field valid boolean
---@field regular_trigger_effect_frequency uint
---@field name string
---@field movement_modifier_when_on_ground float
---@field regular_trigger_effect TriggerEffectItem
---@field render_layer_when_on_ground RenderLayer
---@field mining_particle_frame_speed float
---@field localised_description LocalisedString
---@field order string
---@class LuaVoidEnergySourcePrototype
---@field render_no_power_icon boolean
---@field emissions double
---@field help fun():string
---@field valid boolean
---@field render_no_network_icon boolean
---@class LuaLazyLoadedValue
---@field get fun():any
---@field valid boolean
---@field help fun():string
---@class LuaLogisticPoint
---@field help fun():string
---@field exact boolean
---@field targeted_items_pickup table<string, string>
---@field owner LuaEntity
---@field valid boolean
---@field logistic_member_index uint
---@field filters LogisticFilter[]
---@field logistic_network LuaLogisticNetwork
---@field force LuaForce
---@field targeted_items_deliver table<string, string>
---@field mode defines_logistic_mode
---@class LuaRailChainSignalControlBehavior
---@field red_signal SignalID
---@field green_signal SignalID
---@field orange_signal SignalID
---@field blue_signal SignalID
---@field valid boolean
---@field help fun():string
---@class LuaGui
---@field help fun():string
---@field left LuaGuiElement
---@field valid boolean
---@field player LuaPlayer
---@field screen LuaGuiElement
---@field center LuaGuiElement
---@field goal LuaGuiElement
---@field children table<string, string>
---@field is_valid_sprite_path fun(sprite_path:SpritePath):boolean
---@field top LuaGuiElement
---@class LuaFluidBox
---@field get_capacity fun(index:uint):double
---@field help fun():string
---@field get_filter fun(index:uint):table
---@field get_prototype fun(index:uint):LuaFluidBoxPrototype
---@field get_connections fun(index:uint):LuaFluidBox[]
---@field get_flow fun(index:uint):double
---@field valid boolean
---@field set_filter fun(index:uint,table:__LuaFluidBox__set_filter__table):boolean
---@field owner LuaEntity
---@field get_locked_fluid fun(index:uint):string
---@class __LuaGameScript__unban_player__PlayerSpecification
---@class LuaResourceCategoryPrototype
---@field name string
---@field help fun():string
---@field valid boolean
---@field localised_name LocalisedString
---@field localised_description LocalisedString
---@field order string
---@class LuaAccumulatorControlBehavior
---@field valid boolean
---@field output_signal SignalID
---@field help fun():string
---@class __LuaSurface__get_train_stops__opts
---@field force string
---@field name string
---@class LuaWallControlBehavior
---@field read_sensor boolean
---@field circuit_condition CircuitConditionSpecification
---@field help fun():string
---@field valid boolean
---@field open_gate boolean
---@field output_signal SignalID
---@class LuaItemStack
---@field deconstruct_area any
---@field get_blueprint_tiles fun():any[]
---@field add_durability fun(amount:double)
---@field valid boolean
---@field entity_filter_count uint
---@field is_deconstruction_item boolean
---@field item_number uint
---@field set_blueprint_entity_tags fun(index:uint,tags:Tags)
---@field type string
---@field get_entity_filter fun(index:uint):string
---@field is_upgrade_item boolean
---@field swap_stack fun(stack:LuaItemStack):boolean
---@field trees_and_rocks_only boolean
---@field label_color Color
---@field drain_durability fun(amount:double)
---@field set_entity_filter fun(index:uint,filter:string):boolean
---@field get_blueprint_entity_count fun():uint
---@field tile_selection_mode defines_deconstruction_item_tile_selection_mode
---@field drain_ammo fun(amount:float)
---@field remove_tag fun(tag:string):boolean
---@field get_inventory fun(inventory:defines_inventory):LuaInventory
---@field set_blueprint_entity_tag fun(index:uint,tag:string,value:Any)
---@field can_set_stack fun(stack:ItemStackSpecification):boolean
---@field transfer_stack fun(stack:ItemStackSpecification):boolean
---@field valid_for_read boolean
---@field entity_filter_mode defines_deconstruction_item_entity_filter_mode
---@field allow_manual_label_change boolean
---@field get_blueprint_entity_tag fun(index:uint,tag:string):Any
---@field prototype LuaItemPrototype
---@field default_icons any[]
---@field set_stack fun(stack:ItemStackSpecification):boolean
---@field tags Tags
---@field help fun():string
---@field get_blueprint_entities fun():any[]
---@field import_stack fun(data:string):int
---@field create_blueprint any
---@field entity_filters string[]
---@field grid LuaEquipmentGrid
---@field clear_deconstruction_item fun()
---@field is_item_with_inventory boolean
---@field clear_blueprint fun()
---@field is_selection_tool boolean
---@field clear_upgrade_item fun()
---@field set_tile_filter fun(index:uint,filter:string):boolean
---@field name string
---@field cancel_deconstruct_area any
---@field is_item_with_tags boolean
---@field count uint
---@field health float
---@field is_item_with_label boolean
---@field is_repair_tool boolean
---@field is_armor boolean
---@field clear fun()
---@field is_mining_tool boolean
---@field set_tag fun(tag_name:string,tag:Any):Any
---@field prioritize_insertion_mode string
---@field is_module boolean
---@field is_blueprint_book boolean
---@field get_blueprint_entity_tags fun(index:uint):Tags
---@field cost_to_build table<string, string>
---@field active_index uint
---@field tile_filter_count uint
---@field build_blueprint any
---@field tile_filter_mode defines_deconstruction_item_tile_filter_mode
---@field tile_filters string[]
---@field add_ammo fun(amount:float)
---@field custom_description LocalisedString
---@field is_blueprint_setup fun():boolean
---@field set_blueprint_entities fun(entities:any[])
---@field is_tool boolean
---@field extends_inventory boolean
---@field is_blueprint boolean
---@field set_blueprint_tiles fun(tiles:any[])
---@field label string
---@field get_tag fun(tag_name:string):Any
---@field blueprint_icons any[]
---@field ammo uint
---@field get_mapper fun(index:uint,type:string):UpgradeFilter
---@field export_stack fun():string
---@field get_tile_filter fun(index:uint):string
---@field set_mapper fun(index:uint,type:string,filter:UpgradeFilter)
---@field durability double
---@field is_item_with_entity_data boolean
---@class __LuaEntity__destroy__opts
---@field raise_destroy boolean
---@field do_cliff_correction boolean
---@class LuaCommandProcessor
---@field game_commands table<string, string>
---@field commands table<string, string>
---@field remove_command fun():boolean
---@field add_command fun(name:string,help:LocalisedString,function:fun())
---@field object_name string
---@class __LuaGameScript__kick_player__reason
---@class LuaRecipe
---@field subgroup LuaGroup
---@field group LuaGroup
---@field help fun():string
---@field energy double
---@field hidden_from_flow_stats boolean
---@field force LuaForce
---@field reload fun()
---@field localised_description LocalisedString
---@field order string
---@field hidden boolean
---@field localised_name LocalisedString
---@field name string
---@field products Product[]
---@field valid boolean
---@field prototype LuaRecipePrototype
---@field category string
---@field ingredients Ingredient[]
---@field enabled boolean
---@class __LuaEntity__set_filter__uint
---@class LuaArithmeticCombinatorControlBehavior
---@field valid boolean
---@field parameters ArithmeticCombinatorParameters
---@field help fun():string
---@class LuaDecorativePrototype
---@field help fun():string
---@field localised_name LocalisedString
---@field collision_mask CollisionMask
---@field name string
---@field valid boolean
---@field collision_box BoundingBox
---@field autoplace_specification AutoplaceSpecification
---@field collision_mask_with_flags CollisionMaskWithFlags
---@field localised_description LocalisedString
---@field order string
---@class LuaRendering
---@field draw_circle any
---@field destroy fun(id:uint64)
---@field set_oriented fun(id:uint64,oriented:boolean)
---@field get_oriented_offset fun(id:uint64):Vector
---@field set_orientation fun(id:uint64,orientation:float)
---@field get_scale fun(id:uint64):double
---@field set_right_bottom fun(id:uint64,right_bottom:Position,right_bottom_offset:Vector)
---@field get_orientation fun(id:uint64):float
---@field get_y_scale fun(id:uint64):double
---@field set_only_in_alt_mode fun(id:uint64,only_in_alt_mode:boolean)
---@field get_min_radius fun(id:uint64):double
---@field get_draw_on_ground fun(id:uint64):boolean
---@field set_minimum_darkness fun(id:uint64,minimum_darkness:float)
---@field set_x_scale fun(id:uint64,x_scale:double)
---@field set_min_radius fun(id:uint64,min_radius:double)
---@field set_from fun(id:uint64,from:Position,from_offset:Vector)
---@field set_to fun(id:uint64,to:Position,to_offset:Vector)
---@field set_max_radius fun(id:uint64,max_radius:double)
---@field set_dash_length fun(id:uint64,dash_length:double)
---@field is_font_valid fun(font_name:string):boolean
---@field get_width fun(id:uint64):float
---@field set_intensity fun(id:uint64,intensity:float)
---@field set_gap_length fun(id:uint64,gap_length:double)
---@field get_text fun(id:uint64):LocalisedString
---@field get_visible fun(id:uint64):boolean
---@field get_animation_offset fun(id:uint64):double
---@field set_visible fun(id:uint64,visible:boolean)
---@field set_text fun(id:uint64,text:LocalisedString)
---@field get_scale_with_zoom fun(id:uint64):boolean
---@field draw_line any
---@field get_font fun(id:uint64):string
---@field set_scale fun(id:uint64,scale:double)
---@field set_oriented_offset fun(id:uint64,oriented_offset:Vector)
---@field get_radius fun(id:uint64):double
---@field draw_polygon any
---@field get_orientation_target fun(id:uint64):ScriptRenderTarget
---@field set_font fun(id:uint64,font:string)
---@field object_name string
---@field get_all_ids fun(mod_name:string):uint64[]
---@field set_animation_offset fun(id:uint64,animation_offset:double)
---@field set_animation_speed fun(id:uint64,animation_speed:double)
---@field get_animation_speed fun(id:uint64):double
---@field set_animation fun(id:uint64,animation:string)
---@field bring_to_front fun(id:uint64)
---@field get_target fun(id:uint64):ScriptRenderTarget
---@field set_draw_on_ground fun(id:uint64,draw_on_ground:boolean)
---@field get_oriented fun(id:uint64):boolean
---@field get_angle fun(id:uint64):float
---@field get_minimum_darkness fun(id:uint64):float
---@field get_intensity fun(id:uint64):float
---@field set_corners fun(id:uint64,left_top:Position,left_top_offset:Vector,right_bottom:Position,right_bottom_offset:Vector)
---@field set_orientation_target fun(id:uint64,orientation_target:Position,orientation_target_offset:Vector)
---@field get_dash_length fun(id:uint64):double
---@field get_render_layer fun(id:uint64):RenderLayer
---@field clear fun(mod_name:string)
---@field get_x_scale fun(id:uint64):double
---@field set_sprite fun(id:uint64,sprite:SpritePath)
---@field get_type fun(id:uint64):string
---@field draw_rectangle any
---@field get_sprite fun(id:uint64):SpritePath
---@field set_vertices fun(id:uint64,vertices:ScriptRenderTarget[])
---@field get_vertices fun(id:uint64):ScriptRenderTarget[]
---@field get_time_to_live fun(id:uint64):uint
---@field is_valid fun(id:uint64):boolean
---@field set_start_angle fun(id:uint64,start_angle:float)
---@field set_dashes fun(id:uint64,dash_length:double,gap_length:double)
---@field get_max_radius fun(id:uint64):double
---@field get_start_angle fun(id:uint64):float
---@field get_players fun(id:uint64):LuaPlayer[]
---@field draw_light any
---@field set_alignment fun(id:uint64,alignment:string)
---@field get_to fun(id:uint64):ScriptRenderTarget
---@field get_right_bottom fun(id:uint64):ScriptRenderTarget
---@field set_render_layer fun(id:uint64,render_layer:RenderLayer)
---@field get_left_top fun(id:uint64):ScriptRenderTarget
---@field get_from fun(id:uint64):ScriptRenderTarget
---@field set_width fun(id:uint64,width:float)
---@field get_filled fun(id:uint64):boolean
---@field set_left_top fun(id:uint64,left_top:Position,left_top_offset:Vector)
---@field get_gap_length fun(id:uint64):double
---@field set_players fun(id:uint64,players:PlayerSpecification[])
---@field set_radius fun(id:uint64,radius:double)
---@field set_forces fun(id:uint64,forces:ForceSpecification[])
---@field get_color fun(id:uint64):Color
---@field get_surface fun(id:uint64):LuaSurface
---@field draw_sprite any
---@field set_time_to_live fun(id:uint64,time_to_live:uint)
---@field set_filled fun(id:uint64,filled:boolean)
---@field set_target fun(id:uint64,target:Position,target_offset:Vector)
---@field set_scale_with_zoom fun(id:uint64,scale_with_zoom:boolean)
---@field get_alignment fun(id:uint64):string
---@field get_only_in_alt_mode fun(id:uint64):boolean
---@field draw_animation any
---@field draw_arc any
---@field get_forces fun(id:uint64):LuaForce[]
---@field set_color fun(id:uint64,color:Color)
---@field get_animation fun(id:uint64):string
---@field draw_text any
---@field set_y_scale fun(id:uint64,y_scale:double)
---@field set_angle fun(id:uint64,angle:float)
---@class LuaEquipmentGridPrototype
---@field height uint
---@field help fun():string
---@field locked boolean
---@field localised_name LocalisedString
---@field width uint
---@field name string
---@field valid boolean
---@field equipment_categories string[]
---@field localised_description LocalisedString
---@field order string
---@class LuaAmmoCategoryPrototype
---@field name string
---@field valid boolean
---@field help fun():string
---@field bonus_gui_order string
---@field localised_name LocalisedString
---@field localised_description LocalisedString
---@field order string
---@class LuaBootstrap
---@field raise_console_chat fun(table:RaiseEventParameters)
---@field raise_script_set_tiles fun(table:RaiseEventParameters)
---@field raise_player_fast_transferred fun(table:RaiseEventParameters)
---@field on_init fun(f:fun())
---@field get_event_handler fun(event:uint)
---@field set_event_filter fun(event:uint,filters:any)
---@field on_configuration_changed fun(f:fun(_1:ConfigurationChangedData))
---@field raise_market_item_purchased fun(table:RaiseEventParameters)
---@field is_game_in_debug_mode any
---@field on_load fun(f:fun())
---@field raise_script_revive fun(table:RaiseEventParameters)
---@field object_name string
---@field raise_script_destroy fun(table:RaiseEventParameters)
---@field mod_name string
---@field active_mods table<string, string>
---@field raise_event fun(event:uint,table:__LuaBootstrap__raise_event__table)
---@field raise_biter_base_built fun(table:RaiseEventParameters)
---@field raise_script_built fun(table:RaiseEventParameters)
---@field raise_player_crafted_item fun(table:RaiseEventParameters)
---@field get_event_filter fun(event:uint):table
---@field on_nth_tick fun(tick:uint,f:fun(_1:NthTickEvent))
---@field generate_event_name fun():uint
---@field on_event fun(event:defines_events,f:fun(_1:any),filters:any)
---@field get_event_order fun()
---@class LuaCustomChartTag
---@field destroy fun()
---@field tag_number uint
---@field valid boolean
---@field force LuaForce
---@field icon SignalID
---@field help fun():string
---@field text string
---@field surface LuaSurface
---@field last_user LuaPlayer
---@field position Position
---@class LuaNoiseLayerPrototype
---@field name string
---@field help fun():string
---@field valid boolean
---@field localised_name LocalisedString
---@field localised_description LocalisedString
---@field order string
---@class __LuaRemote__call_____
---@class LuaSettings
---@field object_name string
---@field player LuaCustomTable
---@field global LuaCustomTable
---@field get_player_settings fun(player:LuaPlayer):LuaCustomTable
---@field startup LuaCustomTable
---@class __LuaFlowStatistics__set_input_count__count
---@class LuaElectricEnergySourcePrototype
---@field render_no_power_icon boolean
---@field render_no_network_icon boolean
---@field output_flow_limit double
---@field drain double
---@field input_flow_limit double
---@field usage_priority string
---@field help fun():string
---@field valid boolean
---@field emissions double
---@field buffer_capacity double
---@class __LuaBootstrap__raise_event__table
---@class LuaFluidEnergySourcePrototype
---@field render_no_power_icon boolean
---@field fluid_box any
---@field emissions double
---@field maximum_temperature double
---@field valid boolean
---@field scale_fluid_usage boolean
---@field help fun():string
---@field smoke SmokeSource[]
---@field fluid_usage_per_tick double
---@field render_no_network_icon boolean
---@field burns_fluid boolean
---@field effectivity double
---@class LuaDamagePrototype
---@field name string
---@field valid boolean
---@field help fun():string
---@field hidden boolean
---@field localised_name LocalisedString
---@field localised_description LocalisedString
---@field order string
---@class LuaEntity
---@field destroy fun(opts:__LuaEntity__destroy__opts):boolean
---@field neighbour_bonus double
---@field electric_drain double
---@field moving LuaEntity
---@field connected_rail LuaEntity
---@field secondary_bounding_box BoundingBox
---@field crafting_progress float
---@field speed float
---@field valid boolean
---@field ai_settings LuaAISettings
---@field set_infinity_pipe_filter fun(filter:InfinityPipeFilter)
---@field command Command
---@field type string
---@field tags Tags
---@field get_infinity_pipe_filter fun():InfinityPipeFilter
---@field corpse_immune_to_entity_placement boolean
---@field request_slot_count uint
---@field request_from_buffers boolean
---@field disconnect_rolling_stock fun(direction:defines_rail_direction):boolean
---@field energy_generated_last_tick double
---@field cancel_deconstruction fun(force:ForceSpecification,player:PlayerSpecification)
---@field get_connected_rails fun():LuaEntity[]
---@field get_market_items fun():Offer[]
---@field auto_launch boolean
---@field bonus_progress double
---@field get_rail_segment_overlaps fun():LuaEntity[]
---@field player LuaPlayer
---@field get_filter fun(uint:__LuaEntity__get_filter__uint):string
---@field electric_network_id uint
---@field pump_rail_target LuaEntity
---@field has_command fun():boolean
---@field to_be_upgraded fun():boolean
---@field get_infinity_container_filter fun(index:uint):InfinityInventoryFilter
---@field render_to_forces ForceSpecification[]
---@field driver_is_gunner boolean
---@field character_corpse_tick_of_death uint
---@field enable_logistics_while_moving boolean
---@field is_opened fun():boolean
---@field status defines_entity_status
---@field chain_signal_state defines_chain_signal_state
---@field destructible boolean
---@field highlight_box_type string
---@field distraction_command Command
---@field timeout uint
---@field copy_settings fun(entity:LuaEntity,by_player:LuaPlayer):table<string, string>
---@field is_closed fun():boolean
---@field get_radius fun():double
---@field get_control_behavior fun():LuaControlBehavior.brief
---@field sticked_to LuaEntity
---@field get_upgrade_target fun():LuaEntityPrototype
---@field clear_fluid_inside fun()
---@field trains_in_block uint
---@field previous_recipe LuaRecipe
---@field deplete fun()
---@field set_driver fun(driver:LuaEntity)
---@field electric_input_flow_limit double
---@field get_request_slot fun(slot:uint):SimpleItemStack
---@field help fun():string
---@field logistic_cell LuaLogisticCell
---@field splitter_output_priority string
---@field die fun(force:ForceSpecification,cause:LuaEntity):boolean
---@field filter_slot_count uint
---@field splitter_input_priority string
---@field inserter_filter_mode string
---@field power_switch_state boolean
---@field has_flag fun(flag:string):boolean
---@field consumption_bonus double
---@field temperature double
---@field localised_description LocalisedString
---@field set_beam_target fun(target:LuaEntity)
---@field add_market_item fun(offer:Offer)
---@field get_rail_segment_entity fun(direction:defines_rail_direction,in_else_out:boolean):LuaEntity
---@field get_rail_segment_length fun():double
---@field associated_player LuaPlayer
---@field connect_neighbour fun(target:LuaEntity):boolean
---@field shooting_target LuaEntity
---@field minable boolean
---@field set_beam_source fun(source:LuaEntity)
---@field character_corpse_death_cause LocalisedString
---@field name string
---@field units LuaEntity[]
---@field order_deconstruction fun(force:ForceSpecification,player:PlayerSpecification):boolean
---@field electric_buffer_size double
---@field get_connected_rail any
---@field remove_market_item fun(offer:uint):boolean
---@field ghost_localised_description LocalisedString
---@field selected_gun_index uint
---@field create_build_effect_smoke fun()
---@field render_player LuaPlayer
---@field character_corpse_player_index uint
---@field get_transport_line fun(index:uint):LuaTransportLine
---@field remove_unfiltered_items boolean
---@field infinity_container_filters InfinityInventoryFilter[]
---@field prototype LuaEntityPrototype
---@field tick_of_last_attack uint
---@field products_finished uint
---@field splitter_filter LuaItemPrototype
---@field backer_name string
---@field inserter_stack_size_override uint
---@field clear_request_slot fun(slot:uint)
---@field effectivity_modifier float
---@field get_merged_signals fun(circuit_connector:defines_circuit_connector_id):Signal[]
---@field order_upgrade any
---@field rotatable boolean
---@field highlight_box_blink_interval uint
---@field disconnect_neighbour fun(target:defines_wire_type)
---@field alert_parameters ProgrammableSpeakerAlertParameters
---@field localised_name LocalisedString
---@field pickup_position Position
---@field held_stack LuaItemStack
---@field get_health_ratio fun():float
---@field stickers LuaEntity[]
---@field bounding_box BoundingBox
---@field burner LuaBurner
---@field damage_dealt double
---@field color Color
---@field get_fluid_count fun(fluid:string):double
---@field tree_color_index_max uint8
---@field get_burnt_result_inventory fun():LuaInventory
---@field belt_to_ground_type string
---@field energy double
---@field active boolean
---@field set_passenger fun(passenger:LuaEntity)
---@field orientation float
---@field corpse_expires boolean
---@field mine fun(options:__LuaEntity__mine__options):boolean
---@field get_module_inventory fun():LuaInventory
---@field circuit_connection_definitions any[]
---@field mining_target LuaEntity
---@field ghost_name string
---@field insert_fluid fun(fluid:Fluid):double
---@field relative_turret_orientation float
---@field get_output_inventory fun():LuaInventory
---@field selection_box BoundingBox
---@field loader_type string
---@field proxy_target LuaEntity
---@field power_usage double
---@field power_production double
---@field bonus_mining_progress double
---@field friction_modifier float
---@field to_be_deconstructed fun():boolean
---@field pollution_bonus double
---@field get_passenger fun():LuaEntity
---@field loader_container LuaEntity
---@field get_max_transport_line_index fun():uint
---@field set_recipe fun(recipe:string):table<string, string>
---@field ghost_unit_number uint
---@field get_beam_target fun():BeamTarget
---@field electric_emissions double
---@field cliff_orientation string
---@field is_closing fun():boolean
---@field drop_position Position
---@field electric_output_flow_limit double
---@field ghost_has_flag fun(flag:string):boolean
---@field speed_bonus double
---@field last_user LuaPlayer
---@field ghost_prototype LuaEntityPrototype
---@field release_from_spawner fun()
---@field kills uint
---@field tree_stage_index_max uint8
---@field fluidbox LuaFluidBox
---@field get_beam_source fun():BeamTarget
---@field can_shoot fun(target:LuaEntity,position:Position):boolean
---@field unit_group LuaUnitGroup
---@field clear_market_items fun()
---@field play_note fun(instrument:uint,note:uint):boolean
---@field allow_dispatching_robots boolean
---@field mining_progress double
---@field logistic_network LuaLogisticNetwork
---@field time_to_live uint
---@field rocket_parts uint
---@field graphics_variation uint8
---@field revive fun(opts:__LuaEntity__revive__opts):table<string, string>
---@field signal_state defines_signal_state
---@field armed boolean
---@field ghost_type string
---@field parameters ProgrammableSpeakerParameters
---@field clone any
---@field get_fluid_contents fun():table<string, string>
---@field drop_target LuaEntity
---@field productivity_bonus double
---@field text LocalisedString
---@field update_connections fun()
---@field tree_stage_index uint8
---@field spawner LuaEntity
---@field belt_neighbours table<string, string>
---@field get_stopped_train fun():LuaTrain
---@field neighbours string
---@field to_be_looted boolean
---@field held_stack_position Position
---@field tick_of_last_damage uint
---@field toggle_equipment_movement_bonus fun()
---@field grid LuaEquipmentGrid
---@field get_merged_signal fun(signal:SignalID,circuit_connector:defines_circuit_connector_id):int
---@field pickup_target LuaEntity
---@field circuit_connected_entities table
---@field request_to_close fun(force:ForceSpecification)
---@field tree_color_index uint8
---@field silent_revive fun(opts:__LuaEntity__silent_revive__opts):table<string, string>
---@field get_logistic_point fun(defines_logistic_member_index:__LuaEntity__get_logistic_point__defines_logistic_member_index):LuaLogisticPoint
---@field operable boolean
---@field get_heat_setting fun():HeatSetting
---@field is_crafting fun():boolean
---@field is_connected_to_electric_network fun():boolean
---@field get_rail_segment_end fun(direction:defines_rail_direction):LuaEntity
---@field electric_network_statistics LuaFlowStatistics
---@field effects Effects
---@field is_opening fun():boolean
---@field stack LuaItemStack
---@field effective_speed float
---@field direction defines_direction
---@field consumption_modifier float
---@field set_infinity_container_filter fun(index:uint,filter:InfinityInventoryFilter)
---@field supports_backer_name fun():boolean
---@field get_circuit_network fun(wire:defines_wire_type,circuit_connector:defines_circuit_connector_id):LuaCircuitNetwork
---@field storage_filter LuaItemPrototype
---@field amount uint
---@field set_filter fun(uint:__LuaEntity__set_filter__uint,string:__LuaEntity__set_filter__string)
---@field supports_direction boolean
---@field request_to_open fun(force:ForceSpecification,extra_time:uint)
---@field get_driver fun():LuaEntity
---@field health float
---@field item_requests table<string, string>
---@field crafting_speed double
---@field rotate fun(options:__LuaEntity__rotate__options):boolean
---@field ghost_localised_name LocalisedString
---@field get_fuel_inventory fun():LuaInventory
---@field remove_fluid any
---@field can_be_destroyed fun():boolean
---@field set_heat_setting fun(filter:HeatSetting)
---@field launch_rocket fun():boolean
---@field recipe_locked boolean
---@field start_fading_out fun()
---@field secondary_selection_box BoundingBox
---@field get_recipe fun():LuaRecipe
---@field train LuaTrain
---@field unit_number uint
---@field get_train_stop_trains fun():LuaTrain[]
---@field set_request_slot fun(request:ItemStackSpecification,slot:uint)
---@field set_command fun(command:Command)
---@field get_damage_to_be_taken fun():float
---@field damage fun(damage:float,force:ForceSpecification,type:string,dealer:LuaEntity):float
---@field initial_amount uint
---@field get_or_create_control_behavior fun():LuaControlBehavior.brief
---@field cancel_upgrade fun(force:ForceSpecification,player:PlayerSpecification):boolean
---@field connect_rolling_stock fun(direction:defines_rail_direction):boolean
---@class __LuaForce__add_chart_tag__tag
---@field text string
---@field icon SignalID
---@field last_user PlayerSpecification
---@field position Position
---@class __LuaGameScript__unmute_player__PlayerSpecification
---@class LuaRecipeCategoryPrototype
---@field name string
---@field help fun():string
---@field valid boolean
---@field localised_name LocalisedString
---@field localised_description LocalisedString
---@field order string
---@class LuaConstantCombinatorControlBehavior
---@field set_signal fun(index:uint,signal:Signal)
---@field parameters ConstantCombinatorParameters
---@field help fun():string
---@field enabled boolean
---@field valid boolean
---@field signals_count uint
---@field get_signal fun(index:uint):Signal
---@class LuaFuelCategoryPrototype
---@field name string
---@field help fun():string
---@field valid boolean
---@field localised_name LocalisedString
---@field localised_description LocalisedString
---@field order string
---@class LuaTrainStopControlBehavior
---@field send_to_train boolean
---@field help fun():string
---@field enable_disable boolean
---@field read_from_train boolean
---@field stopped_train_signal SignalID
---@field valid boolean
---@field read_stopped_train boolean
---@class LuaEntityPrototype
---@field burner_prototype LuaBurnerPrototype
---@field inserter_extension_speed double
---@field max_underground_distance uint8
---@field drawing_box BoundingBox
---@field allow_access_to_all_forces boolean
---@field map_generator_bounding_box BoundingBox
---@field min_darkness_to_spawn float
---@field secondary_collision_box BoundingBox
---@field fluid_energy_source_prototype LuaFluidEnergySourcePrototype
---@field speed double
---@field loot Loot
---@field type string
---@field item_pickup_distance double
---@field collision_mask CollisionMask
---@field collision_mask_collides_with_self boolean
---@field explosion_beam double
---@field stack boolean
---@field min_pursue_time uint
---@field respawn_time uint
---@field pumping_speed double
---@field max_pursue_distance double
---@field vision_distance double
---@field belt_speed double
---@field consumption double
---@field energy_usage double
---@field repair_speed_modifier uint
---@field emissions_per_second double
---@field weight double
---@field allowed_effects table<string, string>
---@field guns table<string, string>
---@field building_grid_bit_shift uint
---@field character_corpse LuaEntityPrototype
---@field construction_radius double
---@field crafting_categories table<string, string>
---@field max_distance_of_sector_revealed uint
---@field fluid_usage_per_tick double
---@field automated_ammo_count uint
---@field energy_per_move double
---@field rotation_speed double
---@field autoplace_specification AutoplaceSpecification
---@field allow_custom_vectors boolean
---@field maximum_corner_sliding_distance double
---@field has_flag fun(flag:string):boolean
---@field spawning_time_modifier double
---@field normal_resource_amount uint
---@field effectivity double
---@field created_effect Trigger
---@field color Color
---@field mining_speed double
---@field loot_pickup_distance double
---@field name string
---@field inserter_drop_position Vector
---@field remains_when_mined LuaEntityPrototype[]
---@field map_color Color
---@field timeout uint
---@field container_distance double
---@field infinite_resource boolean
---@field max_distance_of_nearby_sector_revealed uint
---@field pollution_to_join_attack float
---@field spawning_spacing double
---@field speed_multiplier_when_out_of_energy float
---@field max_circuit_wire_distance double
---@field localised_name LocalisedString
---@field next_upgrade LuaEntityPrototype
---@field alert_when_damaged boolean
---@field electric_energy_source_prototype LuaElectricEnergySourcePrototype
---@field attack_result Trigger
---@field selectable_in_game boolean
---@field can_open_gates boolean
---@field enemy_map_color Color
---@field build_distance uint
---@field collision_mask_considers_tile_transitions boolean
---@field ticks_to_keep_aiming_direction uint
---@field valid boolean
---@field help fun():string
---@field module_inventory_size uint
---@field healing_per_tick float
---@field shooting_cursor_size double
---@field selection_box BoundingBox
---@field final_attack_result Trigger
---@field logistic_mode string
---@field inserter_rotation_speed double
---@field filter_count uint
---@field max_count_of_owned_units double
---@field affected_by_tiles boolean
---@field maximum_temperature double
---@field max_darkness_to_spawn float
---@field fluid LuaFluidPrototype
---@field ticks_to_stay_in_combat uint
---@field corpses table<string, string>
---@field alert_icon_shift Vector
---@field enter_vehicle_distance double
---@field item_slot_count uint
---@field reach_resource_distance double
---@field get_inventory_size fun(index:defines_inventory):uint
---@field reach_distance uint
---@field distribution_effectivity double
---@field drop_item_distance uint
---@field max_wire_distance double
---@field running_speed double
---@field base_productivity double
---@field grid_prototype LuaEquipmentGridPrototype
---@field center_collision_mask CollisionMask
---@field adjacent_tile_collision_test CollisionMask
---@field adjacent_tile_collision_mask CollisionMask
---@field heat_energy_source_prototype LuaHeatEnergySourcePrototype
---@field ingredient_count uint
---@field create_ghost_on_death boolean
---@field terrain_friction_modifier float
---@field inserter_pickup_position Vector
---@field supports_direction boolean
---@field fluidbox_prototypes LuaFluidBoxPrototype[]
---@field neighbour_bonus double
---@field is_building boolean
---@field radius double
---@field spawn_cooldown table
---@field target_temperature double
---@field time_to_live uint
---@field mining_drill_radius double
---@field ticks_to_keep_gun uint
---@field turret_rotation_speed double
---@field distraction_cooldown uint
---@field friendly_map_color Color
---@field rocket_parts_required uint
---@field resource_category string
---@field selection_priority uint
---@field max_energy double
---@field tree_color_count uint8
---@field cliff_explosive_prototype string
---@field lab_inputs string[]
---@field fast_replaceable_group string
---@field group LuaGroup
---@field max_friends_around_to_spawn double
---@field logistic_radius double
---@field max_energy_usage double
---@field move_while_shooting boolean
---@field darkness_for_all_lamps_off float
---@field min_to_charge float
---@field darkness_for_all_lamps_on float
---@field max_speed double
---@field resource_categories table<string, string>
---@field belt_length double
---@field belt_distance double
---@field researching_speed double
---@field infinite_depletion_resource_amount uint
---@field spawning_radius double
---@field neighbour_collision_increase double
---@field adjacent_tile_collision_box BoundingBox
---@field supply_area_distance double
---@field energy_per_hit_point double
---@field call_for_help_radius double
---@field has_belt_immunity boolean
---@field void_energy_source_prototype LuaFluidEnergySourcePrototype
---@field energy_per_tick double
---@field collision_box BoundingBox
---@field draw_cargo boolean
---@field max_polyphony uint
---@field collision_mask_with_flags CollisionMaskWithFlags
---@field tank_driving boolean
---@field count_as_rock_for_filtered_deconstruction boolean
---@field friction_force double
---@field fixed_recipe string
---@field turret_range uint
---@field always_on boolean
---@field collision_mask_collides_with_tiles_only boolean
---@field inserter_chases_belt_items boolean
---@field braking_force double
---@field subgroup LuaGroup
---@field result_units any[]
---@field resistances Resistances
---@field created_smoke table
---@field crafting_speed double
---@field max_health float
---@field max_to_charge float
---@field items_to_place_this SimpleItemStack[]
---@field production double
---@field additional_pastable_entities LuaEntityPrototype[]
---@field order string
---@field minimum_resource_amount uint
---@field radar_range uint
---@field alert_when_attacking boolean
---@field sticker_box BoundingBox
---@field allow_burner_leech boolean
---@field fluid_capacity double
---@field mineable_properties table
---@field explosion_rotate double
---@field damage_hit_tint Color
---@field flags EntityPrototypeFlags
---@field max_payload_size uint
---@field localised_description LocalisedString
---@field allow_copy_paste boolean
---@field attack_parameters table
---@field build_base_evolution_requirement double
---@field instruments ProgrammableSpeakerInstrument[]
---@class LuaTile
---@field position Position
---@field collides_with fun(layer:CollisionMaskLayer):boolean
---@field valid boolean
---@field hidden_tile string
---@field name string
---@field order_deconstruction fun(force:ForceSpecification,player:PlayerSpecification):LuaEntity
---@field prototype LuaTilePrototype
---@field surface LuaSurface
---@field cancel_deconstruction fun(force:ForceSpecification,player:PlayerSpecification)
---@field help fun():string
---@class LuaStorageTankControlBehavior
---@field help fun():string
---@field valid boolean
---@class LuaGameScript
---@field create_force fun(force:string):LuaForce
---@field mute_player fun(PlayerSpecification:__LuaGameScript__mute_player__PlayerSpecification)
---@field autosave_enabled boolean
---@field get_filtered_tile_prototypes fun(filters:TilePrototypeFilters):LuaCustomTable
---@field reload_script fun()
---@field get_active_entities_count fun(surface:SurfaceSpecification):uint
---@field save_atlas fun()
---@field get_surface fun(surface:uint):LuaSurface
---@field write_file fun(filename:string,data:LocalisedString,append:boolean,for_player:uint)
---@field max_underground_belt_distance uint8
---@field ban_player fun(PlayerSpecification:LocalisedString,reason:__LuaGameScript__ban_player__reason)
---@field technology_prototypes LuaCustomTable
---@field reset_time_played fun()
---@field get_train_stops fun(opts:__LuaGameScript__get_train_stops__opts):LuaEntity[]
---@field get_filtered_achievement_prototypes fun(filters:AchievementPrototypeFilters):LuaCustomTable
---@field tile_prototypes LuaCustomTable
---@field speed float
---@field kick_player fun(PlayerSpecification:LocalisedString,reason:__LuaGameScript__kick_player__reason)
---@field max_pipe_to_ground_distance uint8
---@field max_gate_activation_distance double
---@field ammo_category_prototypes LuaCustomTable
---@field max_electric_pole_connection_distance double
---@field trivial_smoke_prototypes LuaCustomTable
---@field max_electric_pole_supply_area_distance float
---@field max_force_distraction_chunk_distance uint
---@field draw_resource_selection boolean
---@field print fun(message:LocalisedString,color:Color)
---@field map_settings MapSettings
---@field get_filtered_mod_setting_prototypes fun(filters:ModSettingPrototypeFilters):LuaCustomTable
---@field pollution_statistics LuaFlowStatistics
---@field max_force_distraction_distance double
---@field module_category_prototypes LuaCustomTable
---@field create_profiler fun(stopped:boolean):LuaProfiler
---@field parse_map_exchange_string fun(map_exchange_string:string):MapExchangeStringData
---@field backer_names LuaCustomTable
---@field remove_path fun(path:string)
---@field named_noise_expressions LuaCustomTable
---@field players LuaCustomTable
---@field get_filtered_equipment_prototypes fun(filters:EquipmentPrototypeFilters):LuaCustomTable
---@field set_wait_for_screenshots_to_finish fun()
---@field is_multiplayer fun():boolean
---@field tick uint
---@field direction_to_string fun(direction:defines_direction)
---@field get_filtered_recipe_prototypes fun(filters:RecipePrototypeFilters):LuaCustomTable
---@field connected_players LuaPlayer[]
---@field is_valid_sprite_path fun(sprite_path:SpritePath):boolean
---@field active_mods table<string, string>
---@field surfaces LuaCustomTable
---@field finished boolean
---@field ticks_to_run uint
---@field disable_tips_and_tricks fun()
---@field tick_paused boolean
---@field ticks_played uint
---@field styles LuaCustomTable
---@field check_prototype_translations fun()
---@field max_inserter_reach_distance double
---@field damage_prototypes LuaCustomTable
---@field enemy_has_vision_on_land_mines boolean
---@field equipment_category_prototypes LuaCustomTable
---@field shortcut_prototypes LuaCustomTable
---@field play_sound any
---@field take_screenshot any
---@field create_surface fun(name:string,settings:MapGenSettings):LuaSurface
---@field achievement_prototypes LuaCustomTable
---@field unban_player fun(PlayerSpecification:__LuaGameScript__unban_player__PlayerSpecification)
---@field noise_layer_prototypes LuaCustomTable
---@field help fun()
---@field resource_category_prototypes LuaCustomTable
---@field max_beacon_supply_area_distance double
---@field decorative_prototypes LuaCustomTable
---@field remove_offline_players fun(players:LuaPlayer[])
---@field item_subgroup_prototypes LuaCustomTable
---@field evaluate_expression fun(expression:string,variables:table<string, string>):double
---@field permissions LuaPermissionGroups
---@field fuel_category_prototypes LuaCustomTable
---@field custom_input_prototypes LuaCustomTable
---@field get_filtered_entity_prototypes fun(filters:EntityPrototypeFilters):LuaCustomTable
---@field unmute_player fun(PlayerSpecification:__LuaGameScript__unmute_player__PlayerSpecification)
---@field difficulty_settings DifficultySettings
---@field particle_prototypes LuaCustomTable
---@field disable_tutorial_triggers fun()
---@field item_group_prototypes LuaCustomTable
---@field recipe_prototypes LuaCustomTable
---@field get_script_inventories fun(mod:string):table<string, string>
---@field disable_replay fun()
---@field is_valid_sound_path fun():boolean
---@field equipment_prototypes LuaCustomTable
---@field fluid_prototypes LuaCustomTable
---@field item_prototypes LuaCustomTable
---@field entity_prototypes LuaCustomTable
---@field regenerate_entity fun(entities:string)
---@field forces LuaCustomTable
---@field purge_player fun(PlayerSpecification:__LuaGameScript__purge_player__PlayerSpecification)
---@field encode_string fun(string:string):string
---@field set_game_state any
---@field difficulty defines_difficulty
---@field autoplace_control_prototypes LuaCustomTable
---@field player LuaPlayer
---@field object_name string
---@field show_message_dialog any
---@field virtual_signal_prototypes LuaCustomTable
---@field merge_forces fun(source:ForceSpecification,destination:ForceSpecification)
---@field force_crc fun()
---@field create_random_generator fun(seed:uint):LuaRandomGenerator
---@field is_demo fun():boolean
---@field auto_save fun(name:string)
---@field check_consistency fun()
---@field equipment_grid_prototypes LuaCustomTable
---@field create_inventory fun(size:uint16):LuaInventory
---@field reload_mods fun()
---@field get_filtered_item_prototypes fun(filters:ItemPrototypeFilters):LuaCustomTable
---@field recipe_category_prototypes LuaCustomTable
---@field get_map_exchange_string fun():string
---@field json_to_table fun(json:string):Any
---@field get_filtered_fluid_prototypes fun(filters:FluidPrototypeFilters):LuaCustomTable
---@field get_filtered_decorative_prototypes fun(filters:DecorativePrototypeFilters):LuaCustomTable
---@field mod_setting_prototypes LuaCustomTable
---@field get_player fun(player:uint):LuaPlayer
---@field delete_surface fun(surface:string)
---@field take_technology_screenshot any
---@field default_map_gen_settings MapGenSettings
---@field count_pipe_groups fun()
---@field table_to_json fun(data:table):string
---@field get_entity_by_tag fun(tag:string):LuaEntity
---@field decode_string fun(string:string):string
---@field get_filtered_technology_prototypes fun(filters:TechnologyPrototypeFilters):LuaCustomTable
---@field server_save fun(name:string)
---@class LuaModuleCategoryPrototype
---@field name string
---@field help fun():string
---@field valid boolean
---@field localised_name LocalisedString
---@field localised_description LocalisedString
---@field order string
---@class LuaControl
---@field update_selected_entity fun(position:Position)
---@field resource_reach_distance double
---@field set_personal_logistic_slot fun(slot_index:uint,value:PersonalLogisticParameters):boolean
---@field force ForceSpecification
---@field character_additional_mining_categories string[]
---@field character_trash_slot_count_bonus uint
---@field remove_item fun(items:ItemStackSpecification):uint
---@field drop_item_distance uint
---@field get_personal_logistic_slot fun(slot_index:uint):PersonalLogisticParameters
---@field character_running_speed_modifier double
---@field crafting_queue_size uint
---@field character_running_speed double
---@field mine_tile fun(tile:LuaTile):boolean
---@field character_health_bonus float
---@field opened LuaEntity
---@field teleport fun(position:Position,surface:SurfaceSpecification):boolean
---@field is_player fun():boolean
---@field walking_state table
---@field surface LuaSurface
---@field mining_state table
---@field disable_flashlight fun()
---@field set_gui_arrow any
---@field clear_personal_logistic_slot fun(slot_index:uint)
---@field following_robots LuaEntity[]
---@field open_technology_gui fun(technology:TechnologySpecification)
---@field get_main_inventory fun():LuaInventory
---@field begin_crafting any
---@field clear_gui_arrow fun()
---@field character_build_distance_bonus uint
---@field mine_entity fun(entity:LuaEntity,force:boolean):boolean
---@field selected LuaEntity
---@field character_resource_reach_distance_bonus uint
---@field driving boolean
---@field can_reach_entity fun(entity:LuaEntity):boolean
---@field enable_flashlight fun()
---@field character_loot_pickup_distance_bonus uint
---@field cheat_mode boolean
---@field loot_pickup_distance double
---@field is_flashlight_enabled fun()
---@field character_inventory_slots_bonus uint
---@field character_crafting_speed_modifier double
---@field cursor_ghost ItemPrototypeSpecification
---@field character_mining_progress double
---@field riding_state RidingState
---@field in_combat boolean
---@field item_pickup_distance double
---@field reach_distance uint
---@field get_inventory fun(inventory:defines_inventory):LuaInventory
---@field opened_gui_type defines_gui_type
---@field repair_state table
---@field clear_selected_entity fun()
---@field character_logistic_slot_count uint
---@field position Position
---@field get_item_count fun(item:string):uint
---@field auto_trash_filters table<string, string>
---@field insert fun(items:ItemStackSpecification):uint
---@field picking_state boolean
---@field shooting_state table
---@field character_personal_logistic_requests_enabled boolean
---@field character_item_pickup_distance_bonus uint
---@field character_maximum_following_robot_count_bonus uint
---@field character_reach_distance_bonus uint
---@field character_item_drop_distance_bonus uint
---@field can_insert fun(items:ItemStackSpecification):boolean
---@field character_mining_speed_modifier double
---@field cancel_crafting fun(options:__LuaControl__cancel_crafting__options)
---@field crafting_queue any[]
---@field get_craftable_count fun(recipe:string):uint
---@field clear_items_inside fun()
---@field cursor_stack LuaItemStack
---@field has_items_inside fun():boolean
---@field build_distance uint
---@field vehicle LuaEntity
---@class LuaDeciderCombinatorControlBehavior
---@field valid boolean
---@field parameters DeciderCombinatorParameters
---@field help fun():string
---@class LuaRoboportControlBehavior
---@field read_logistics boolean
---@field total_logistic_output_signal SignalID
---@field valid boolean
---@field help fun():string
---@field total_construction_output_signal SignalID
---@field available_construction_output_signal SignalID
---@field available_logistic_output_signal SignalID
---@field read_robot_stats boolean
---@class __LuaForce__set_saved_technology_progress__double
---@class LuaFluidPrototype
---@field flow_color Color
---@field group LuaGroup
---@field help fun():string
---@field valid boolean
---@field gas_temperature double
---@field localised_description LocalisedString
---@field order string
---@field emissions_multiplier double
---@field fuel_value double
---@field localised_name LocalisedString
---@field name string
---@field heat_capacity double
---@field subgroup LuaGroup
---@field max_temperature double
---@field hidden boolean
---@field base_color Color
---@field default_temperature double
---@class LuaRemote
---@field call fun(interface:string,function:string,___:__LuaRemote__call_____):any
---@field object_name string
---@field remove_interface fun(name:string):boolean
---@field add_interface fun(name:string,functions:table<string, string>)
---@field interfaces table<string, string>
---@class LuaPermissionGroup
---@field destroy fun():boolean
---@field help fun():string
---@field group_id uint
---@field players LuaPlayer[]
---@field set_allows_action fun(action:__LuaPermissionGroup__set_allows_action__action):boolean
---@field name string
---@field remove_player fun(player:PlayerSpecification):boolean
---@field valid boolean
---@field allows_action fun(action:__LuaPermissionGroup__allows_action__action):boolean
---@field add_player fun(player:PlayerSpecification):boolean
---@class LuaGuiElement
---@field remove_tab fun(tab:LuaGuiElement)
---@field text string
---@field elem_filters any
---@field scroll_to_bottom fun()
---@field valid boolean
---@field visible boolean
---@field force string
---@field number double
---@field switch_state string
---@field remove_item fun(index:uint)
---@field tooltip LocalisedString
---@field surface_index uint
---@field tabs any[]
---@field set_slider_discrete_values fun(value:boolean)
---@field location GuiLocation
---@field enabled boolean
---@field type string
---@field selectable boolean
---@field select_all fun()
---@field scroll_to_left fun()
---@field vertical_centering boolean
---@field drag_target LuaGuiElement
---@field locked boolean
---@field hovered_sprite SpritePath
---@field draw_horizontal_line_after_headers boolean
---@field slider_value double
---@field items LocalisedString[]
---@field right_label_tooltip LocalisedString
---@field clear_and_focus_on_right_click boolean
---@field scroll_to_top fun()
---@field vertical_scroll_policy string
---@field focus fun()
---@field caption LocalisedString
---@field auto_center boolean
---@field clicked_sprite SpritePath
---@field children_names string[]
---@field draw_vertical_lines boolean
---@field lose_focus_on_confirm boolean
---@field get_slider_minimum fun():double
---@field get_slider_value_step fun():double
---@field gui LuaGui
---@field horizontal_scroll_policy string
---@field help fun():string
---@field selected_tab_index uint
---@field add_item fun(LocalisedString:uint,index:__LuaGuiElement__add_item__index)
---@field clear_items fun()
---@field left_label_tooltip LocalisedString
---@field zoom double
---@field allow_none_state boolean
---@field get_slider_discrete_slider fun():boolean
---@field entity LuaEntity
---@field word_wrap boolean
---@field allow_decimal boolean
---@field allow_negative boolean
---@field add any
---@field is_password boolean
---@field numeric boolean
---@field mouse_button_filter MouseButtonFlags
---@field column_count uint
---@field name string
---@field value double
---@field draw_horizontal_lines boolean
---@field direction string
---@field show_percent_for_small_numbers boolean
---@field set_slider_value_step fun(value:double)
---@field ignored_by_interaction boolean
---@field scroll_to_item fun(index:int,scroll_mode:string)
---@field clear fun()
---@field read_only boolean
---@field state boolean
---@field minimap_player_index uint
---@field elem_value string
---@field scroll_to_right fun()
---@field elem_type string
---@field select fun(start:int,end:int)
---@field destroy fun()
---@field set_slider_discrete_slider fun(value:boolean)
---@field children LuaGuiElement[]
---@field scroll_to_element fun(element:LuaGuiElement,scroll_mode:string)
---@field index uint
---@field get_slider_maximum fun():double
---@field force_auto_center fun()
---@field left_label_caption LocalisedString
---@field set_item fun(index:uint,LocalisedString:__LuaGuiElement__set_item__LocalisedString)
---@field get_slider_discrete_values fun():boolean
---@field position Position
---@field badge_text LocalisedString
---@field selected_index uint
---@field get_item fun(index:uint):LocalisedString
---@field right_label_caption LocalisedString
---@field parent LuaGuiElement
---@field add_tab fun(tab:LuaGuiElement,content:LuaGuiElement)
---@field sprite SpritePath
---@field player_index uint
---@field set_slider_minimum_maximum fun(minimum:double,maximum:double)
---@field get_mod fun():string
---@field resize_to_sprite boolean
---@field style LuaStyle
---@class LuaLogisticNetwork
---@field passive_provider_points LuaLogisticPoint[]
---@field requesters LuaEntity[]
---@field empty_provider_points LuaLogisticPoint[]
---@field valid boolean
---@field get_item_count fun(item:string,member:string):int
---@field force LuaForce
---@field help fun():string
---@field insert fun(item:ItemStackSpecification,members:string):uint
---@field available_logistic_robots uint
---@field logistic_robots LuaEntity[]
---@field find_cell_closest_to fun(position:Position):LuaLogisticCell
---@field remove_item fun(item:ItemStackSpecification,members:string):uint
---@field construction_robots LuaEntity[]
---@field providers LuaEntity[]
---@field active_provider_points LuaLogisticPoint[]
---@field all_logistic_robots uint
---@field storage_points LuaLogisticPoint[]
---@field select_drop_point any
---@field get_contents fun():table<string, string>
---@field requester_points LuaLogisticPoint[]
---@field robots LuaEntity[]
---@field provider_points LuaLogisticPoint[]
---@field select_pickup_point any
---@field logistic_members LuaEntity[]
---@field robot_limit uint
---@field cells LuaLogisticCell[]
---@field empty_providers LuaEntity[]
---@field all_construction_robots uint
---@field available_construction_robots uint
---@field storages LuaEntity[]
---@class LuaUnitGroup
---@field help fun():string
---@field destroy fun()
---@field command Command
---@field position Position
---@field distraction_command Command
---@field valid boolean
---@field add_member fun(unit:LuaEntity)
---@field force LuaForce
---@field members LuaEntity[]
---@field is_script_driven boolean
---@field group_number uint
---@field surface LuaSurface
---@field state defines_group_state
---@field set_autonomous fun()
---@field start_moving fun()
---@field set_command fun(command:Command)
---@class LuaHeatEnergySourcePrototype
---@field render_no_power_icon boolean
---@field render_no_network_icon boolean
---@field help fun():string
---@field max_transfer double
---@field specific_heat double
---@field valid boolean
---@field min_working_temperature double
---@field minimum_glow_temperature double
---@field connections any[]
---@field max_temperature double
---@field min_temperature_gradient double
---@field emissions double
---@field default_temperature double
---@class __LuaEntity__revive__opts
---@field return_item_request_proxy boolean
---@field raise_revive boolean
---@class LuaEquipment
---@field help fun():string
---@field burner LuaBurner
---@field shape table
---@field energy double
---@field valid boolean
---@field type string
---@field generator_power double
---@field position Position
---@field name string
---@field max_energy double
---@field shield double
---@field prototype LuaEquipmentPrototype
---@field max_solar_power double
---@field movement_bonus double
---@field max_shield double
---@class __LuaFlowStatistics__get_output_count__string
---@class LuaStyle
---@field height int
---@field stretch_image_to_widget_size boolean
---@field valid boolean
---@field column_alignments LuaCustomTable
---@field left_margin int
---@field maximal_height int
---@field font_color Color
---@field extra_bottom_padding_when_activated int
---@field left_cell_padding int
---@field natural_height int
---@field single_line boolean
---@field padding int
---@field selected_clicked_font_color Color
---@field right_cell_padding int
---@field font string
---@field default_badge_font_color Color
---@field bottom_padding int
---@field margin int
---@field horizontally_stretchable boolean
---@field clicked_vertical_offset int
---@field disabled_badge_font_color Color
---@field horizontal_align string
---@field hovered_font_color Color
---@field pie_progress_color Color
---@field vertical_spacing int
---@field use_header_filler boolean
---@field clicked_font_color Color
---@field extra_top_margin_when_activated int
---@field extra_top_padding_when_activated int
---@field vertical_align string
---@field minimal_width int
---@field name string
---@field natural_width int
---@field cell_padding int
---@field extra_left_margin_when_activated int
---@field help fun():string
---@field bottom_margin int
---@field right_padding int
---@field gui LuaGui
---@field width int
---@field right_margin int
---@field left_padding int
---@field strikethrough_color Color
---@field vertically_squashable boolean
---@field badge_horizontal_spacing int
---@field badge_font string
---@field color Color
---@field horizontally_squashable boolean
---@field maximal_width int
---@field extra_bottom_margin_when_activated int
---@field extra_right_margin_when_activated int
---@field extra_right_padding_when_activated int
---@field top_cell_padding int
---@field extra_left_padding_when_activated int
---@field disabled_font_color Color
---@field vertically_stretchable boolean
---@field minimal_height int
---@field rich_text_setting defines_rich_text_setting
---@field bottom_cell_padding int
---@field top_padding int
---@field horizontal_spacing int
---@field selected_badge_font_color Color
---@field selected_font_color Color
---@field selected_hovered_font_color Color
---@field top_margin int
---@class __LuaPermissionGroup__allows_action__action
---@class LuaControlBehavior
---@field get_circuit_network fun(wire:defines_wire_type,circuit_connector:defines_circuit_connector_id):LuaCircuitNetwork
---@field type defines_control_behavior_type
---@field entity LuaEntity
---@class LuaEquipmentCategoryPrototype
---@field name string
---@field help fun():string
---@field valid boolean
---@field localised_name LocalisedString
---@field localised_description LocalisedString
---@field order string
---@class LuaContainerControlBehavior
---@field help fun():string
---@field valid boolean
---@class LuaBurnerPrototype
---@field render_no_power_icon boolean
---@field emissions double
---@field help fun():string
---@field fuel_inventory_size uint
---@field valid boolean
---@field light_flicker table
---@field burnt_inventory_size uint
---@field fuel_categories table<string, string>
---@field render_no_network_icon boolean
---@field smoke SmokeSource[]
---@field effectivity double
---@class __LuaEntity__set_filter__string
---@class LuaPermissionGroups
---@field help fun():string
---@field create_group fun(name:string):LuaPermissionGroup
---@field valid boolean
---@field groups LuaPermissionGroup[]
---@field get_group fun(group:string):LuaPermissionGroup
---@class LuaAISettings
---@field allow_try_return_to_spawner boolean
---@field path_resolution_modifier int8
---@field do_separation boolean
---@field valid boolean
---@field help fun():string
---@field allow_destroy_when_commands_fail boolean
---@class LuaCombinatorControlBehavior
---@field get_signal_last_tick fun(signal:SignalID):int
---@field signals_last_tick Signal[]
---@class LuaRecipePrototype
---@field subgroup LuaGroup
---@field group LuaGroup
---@field main_product Product
---@field energy double
---@field hidden_from_flow_stats boolean
---@field overload_multiplier uint
---@field hidden_from_player_crafting boolean
---@field always_show_products boolean
---@field always_show_made_in boolean
---@field allow_intermediates boolean
---@field localised_description LocalisedString
---@field order string
---@field emissions_multiplier double
---@field help fun():string
---@field hidden boolean
---@field localised_name LocalisedString
---@field valid boolean
---@field request_paste_multiplier uint
---@field show_amount_in_title boolean
---@field name string
---@field products Product[]
---@field allow_decomposition boolean
---@field allow_as_intermediate boolean
---@field enabled boolean
---@field category string
---@field ingredients Ingredient[]
---@class __LuaControl__cancel_crafting__options
---@field index uint
---@field count uint
---@class __LuaFlowStatistics__get_input_count__string
---@class __LuaFlowStatistics__on_flow__count
---@class LuaItemPrototype
---@field valid boolean
---@field limitation_message_key string
---@field speed float
---@field default_request_amount uint
---@field repair_result Trigger
---@field fuel_top_speed_multiplier double
---@field inventory_size uint
---@field selection_mode_flags SelectionModeFlags
---@field fuel_emissions_multiplier double
---@field stackable boolean
---@field tier uint
---@field wire_count uint
---@field magazine_size float
---@field get_ammo_type fun(ammo_source_type:string):AmmoType
---@field selection_border_color Color
---@field tile_filter_slots uint
---@field alt_selection_border_color Color
---@field module_effects Effects
---@field fuel_category string
---@field tile_filter_mode string
---@field entity_filter_mode string
---@field entity_filter_slots uint
---@field default_label_color Color
---@field alt_selection_cursor_box_type string
---@field curved_rail LuaEntityPrototype
---@field reload_time float
---@field rocket_launch_products Product[]
---@field inventory_size_bonus uint
---@field draw_label_for_cursor_render boolean
---@field entity_filters table<string, string>
---@field item_subgroup_filters table<string, string>
---@field has_flag fun(flag:string):boolean
---@field localised_description LocalisedString
---@field limitations string[]
---@field fuel_value float
---@field item_group_filters table<string, string>
---@field help fun():string
---@field mapper_count uint
---@field name string
---@field infinite boolean
---@field durability double
---@field durability_description_key string
---@field localised_filter_message LocalisedString
---@field alt_tile_filters table<string, string>
---@field tile_filters table<string, string>
---@field flags table<string, string>
---@field place_as_equipment_result LuaEquipmentPrototype
---@field item_filters table<string, string>
---@field entity_type_filters table<string, string>
---@field alt_entity_filters table<string, string>
---@field show_in_library boolean
---@field group LuaGroup
---@field resistances Resistances
---@field fuel_acceleration_multiplier double
---@field alt_tile_filter_mode string
---@field alt_entity_filter_mode string
---@field always_include_tiles boolean
---@field selection_cursor_box_type string
---@field alt_entity_type_filters table<string, string>
---@field stack_size uint
---@field order string
---@field type string
---@field alt_selection_mode_flags SelectionModeFlags
---@field insertion_priority_mode string
---@field category string
---@field subgroup LuaGroup
---@field localised_name LocalisedString
---@field straight_rail LuaEntityPrototype
---@field capsule_action CapsuleAction
---@field can_be_mod_opened boolean
---@field burnt_result LuaItemPrototype
---@field place_as_tile_result PlaceAsTileResult
---@field place_result LuaEntityPrototype
---@field filter_mode string
---@field attack_parameters AttackParameters
---@field equipment_grid LuaEquipmentGridPrototype
---@field extend_inventory_by_default boolean
---@class LuaEquipmentPrototype
---@field burner_prototype LuaBurnerPrototype
---@field energy_source LuaElectricEnergySourcePrototype
---@field valid boolean
---@field equipment_categories string[]
---@field take_result LuaItemPrototype
---@field shield float
---@field localised_description LocalisedString
---@field order string
---@field logistic_parameters table
---@field help fun():string
---@field automatic boolean
---@field localised_name LocalisedString
---@field energy_per_shield double
---@field background_color Color
---@field electric_energy_source_prototype LuaElectricEnergySourcePrototype
---@field name string
---@field attack_parameters AttackParameters
---@field shape table
---@field type string
---@field movement_bonus float
---@field energy_consumption double
---@field energy_production double
---@class LuaRailPath
---@field current uint
---@field total_distance double
---@field help fun():string
---@field travelled_distance double
---@field valid boolean
---@field rails LuaCustomTable
---@field size uint
---@class LuaVirtualSignalPrototype
---@field subgroup LuaGroup
---@field name string
---@field valid boolean
---@field help fun():string
---@field special boolean
---@field localised_name LocalisedString
---@field localised_description LocalisedString
---@field order string
---@class __LuaFluidBox__set_filter__table
---@field minimum_temperature double
---@field name string
---@field force boolean
---@field maximum_temperature double
---@class LuaEquipmentGrid
---@field height uint
---@field generator_energy double
---@field valid boolean
---@field battery_capacity double
---@field get fun(position:Position):LuaEquipment
---@field equipment LuaEquipment[]
---@field take any
---@field move any
---@field inhibit_movement_bonus boolean
---@field get_contents fun():table<string, string>
---@field available_in_batteries double
---@field width uint
---@field help fun():string
---@field max_shield float
---@field shield float
---@field take_all fun():table<string, string>
---@field clear fun()
---@field prototype LuaEquipmentGridPrototype
---@field put any
---@field can_move any
---@field max_solar_energy double
---@class __LuaForce__get_train_stops__opts
---@field surface string
---@field name string
---@class LuaLampControlBehavior
---@field valid boolean
---@field use_colors boolean
---@field color Color
---@field help fun():string
---@class LuaInventory
---@field clear fun()
---@field can_insert fun(items:ItemStackSpecification):boolean
---@field help fun():string
---@field index defines_inventory
---@field get_filter fun(index:uint):string
---@field get_item_count fun(item:string):uint
---@field find_item_stack fun(item:string):LuaItemStack
---@field insert fun(items:ItemStackSpecification):uint
---@field find_empty_stack fun(item:string):LuaItemStack
---@field valid boolean
---@field mod_owner string
---@field sort_and_merge fun()
---@field equipment_owner LuaEntity
---@field player_owner LuaPlayer
---@field can_set_filter fun(index:uint,filter:string):boolean
---@field entity_owner LuaEntity
---@field destroy fun()
---@field supports_bar fun():boolean
---@field is_filtered fun():boolean
---@field resize fun(size:uint16)
---@field get_bar fun():uint
---@field set_filter fun(index:uint,filter:string):boolean
---@field count_empty_stacks fun(include_filtered:boolean):uint
---@field get_insertable_count fun(item:string)
---@field set_bar fun(bar:uint)
---@field get_contents fun():table<string, string>
---@field is_empty fun():boolean
---@field remove fun(items:ItemStackSpecification):uint
---@field supports_filters fun():boolean
---@class __LuaGameScript__mute_player__PlayerSpecification
---@class LuaTrain
---@field path_end_rail LuaEntity
---@field back_stock LuaEntity
---@field help fun():string
---@field valid boolean
---@field get_item_count fun(item:string):uint
---@field front_rail LuaEntity
---@field insert_fluid fun(fluid:Fluid):double
---@field remove_item fun(stack:ItemStackSpecification):uint
---@field speed double
---@field get_rails fun():LuaEntity[]
---@field rail_direction_from_front_rail defines_rail_direction
---@field passengers LuaPlayer[]
---@field id uint
---@field path_end_stop LuaEntity
---@field riding_state RidingState
---@field state defines_train_state
---@field clear_items_inside fun()
---@field max_forward_speed double
---@field insert fun(stack:ItemStackSpecification)
---@field path LuaRailPath
---@field kill_count uint
---@field killed_players table<uint, uint>
---@field has_path boolean
---@field rail_direction_from_back_rail defines_rail_direction
---@field manual_mode boolean
---@field max_backward_speed double
---@field go_to_station fun(index:uint)
---@field carriages LuaEntity[]
---@field station LuaEntity
---@field cargo_wagons LuaEntity[]
---@field front_stock LuaEntity
---@field get_contents fun():table<string, string>
---@field signal LuaEntity
---@field back_rail LuaEntity
---@field locomotives table<string, string>
---@field fluid_wagons LuaEntity[]
---@field remove_fluid fun(fluid:Fluid):double
---@field recalculate_path fun(force:boolean):boolean
---@field weight double
---@field get_fluid_contents fun():table<string, string>
---@field clear_fluids_inside fun()
---@field get_fluid_count fun(fluid:string):double
---@field schedule TrainSchedule
---@class __LuaEntity__get_logistic_point__defines_logistic_member_index
---@class __LuaEntity__rotate__options
---@field enable_looted boolean
---@field spill_items boolean
---@field reverse boolean
---@field by_player LuaPlayer
---@field force LuaForce
---@class LuaTilePrototype
---@field map_color Color
---@field automatic_neighbors boolean
---@field help fun():string
---@field walking_speed_modifier float
---@field autoplace_specification AutoplaceSpecification
---@field needs_correction boolean
---@field items_to_place_this SimpleItemStack[]
---@field localised_description LocalisedString
---@field order string
---@field valid boolean
---@field emissions_per_second double
---@field localised_name LocalisedString
---@field can_be_part_of_blueprint boolean
---@field next_direction LuaTilePrototype
---@field collision_mask CollisionMask
---@field name string
---@field decorative_removal_probability float
---@field mineable_properties table
---@field allowed_neighbors table<string, string>
---@field vehicle_friction_modifier float
---@field collision_mask_with_flags CollisionMaskWithFlags
---@field layer uint
---@class __LuaForce__research_all_technologies__include_disabled_prototypes
---@class LuaLogisticCell
---@field logistics_connection_distance float
---@field help fun():string
---@field stationed_construction_robot_count uint
---@field neighbours LuaLogisticCell[]
---@field to_charge_robots LuaEntity[]
---@field logistic_radius float
---@field transmitting boolean
---@field is_in_logistic_range fun(position:Position):boolean
---@field mobile boolean
---@field charging_robot_count uint
---@field is_neighbour_with fun(other:LuaLogisticCell):boolean
---@field stationed_logistic_robot_count uint
---@field owner LuaEntity
---@field construction_radius float
---@field valid boolean
---@field is_in_construction_range fun(position:Position):boolean
---@field charging_robots LuaEntity[]
---@field charge_approach_distance float
---@field to_charge_robot_count uint
---@field logistic_network LuaLogisticNetwork
---@class __LuaEntity__get_filter__uint
---@class LuaAutoplaceControlPrototype
---@field control_order string
---@field help fun():string
---@field localised_name LocalisedString
---@field richness boolean
---@field name string
---@field valid boolean
---@field category string
---@field localised_description LocalisedString
---@field order string
---@class LuaRailSignalControlBehavior
---@field close_signal boolean
---@field green_signal SignalID
---@field help fun():string
---@field orange_signal SignalID
---@field read_signal boolean
---@field valid boolean
---@field circuit_condition CircuitConditionSpecification
---@field red_signal SignalID
---@class LuaTechnology
---@field research_unit_energy double
---@field prerequisites table<string, string>
---@field help fun():string
---@field upgrade boolean
---@field valid boolean
---@field force LuaForce
---@field reload fun()
---@field localised_description LocalisedString
---@field order string
---@field research_unit_ingredients Ingredient[]
---@field enabled boolean
---@field localised_name LocalisedString
---@field visible_when_disabled boolean
---@field researched boolean
---@field name string
---@field research_unit_count_formula string
---@field prototype LuaTechnologyPrototype
---@field research_unit_count uint
---@field level uint
---@field effects Modifier[]
---@class LuaSurface
---@field deconstruct_area any
---@field find_non_colliding_position_in_box fun(name:string,search_space:BoundingBox,precision:double,force_to_tile_center:boolean):Position
---@field get_starting_area_radius fun():double
---@field request_to_generate_chunks fun(position:Position,radius:uint)
---@field valid boolean
---@field delete_chunk fun(position:ChunkPosition)
---@field wind_speed float
---@field set_hidden_tile fun(position:TilePosition,tile:string)
---@field regenerate_decorative fun(decoratives:string,chunks:ChunkPosition[])
---@field morning double
---@field set_chunk_generated_status fun(position:ChunkPosition,status:defines_chunk_generated_status)
---@field set_multi_command any
---@field get_script_positions fun(name:string):ScriptPosition[]
---@field get_tile fun(x:int,y:int):LuaTile
---@field get_resource_counts fun():table<string, string>
---@field find_units any
---@field generate_with_lab_tiles boolean
---@field always_day boolean
---@field print fun(message:LocalisedString,color:Color)
---@field clone_entities any
---@field add_script_position fun(area:ScriptPosition):uint
---@field spill_item_stack fun(position:Position,items:ItemStackSpecification,enable_looted:boolean,force:LuaForce,allow_belts:boolean):LuaEntity[]
---@field entity_prototype_collides fun(prototype:EntityPrototypeSpecification,position:Position,use_map_generation_bounding_box:boolean,direction:defines_direction)
---@field force_generate_chunk_requests fun()
---@field build_enemy_base fun(position:Position,unit_count:uint,force:ForceSpecification)
---@field find_entities_filtered any
---@field create_decoratives any
---@field find_logistic_network_by_position fun(position:Position,force:ForceSpecification):LuaLogisticNetwork
---@field is_chunk_generated fun(position:ChunkPosition):boolean
---@field dusk double
---@field upgrade_area any
---@field find_enemy_units fun(center:Position,radius:double,force:LuaForce):LuaEntity[]
---@field create_trivial_smoke any
---@field find_non_colliding_position fun(name:string,center:Position,radius:double,precision:double,force_to_tile_center:boolean):Position
---@field find_decoratives_filtered any
---@field cancel_upgrade_area any
---@field get_hidden_tile fun(position:TilePosition):string
---@field get_trains fun(force:ForceSpecification):LuaTrain[]
---@field destroy_decoratives any
---@field pollute fun(source:Position,amount:double)
---@field count_entities_filtered any
---@field clone_area any
---@field wind_orientation_change float
---@field get_connected_tiles fun(position:Position,tiles:string[]):Position
---@field clear_pollution fun()
---@field can_place_entity any
---@field darkness float
---@field get_chunks fun():LuaChunkIterator
---@field help fun():string
---@field brightness_visual_weights ColorModifier
---@field min_brightness double
---@field get_script_area fun(key:string):ScriptArea
---@field solar_power_multiplier double
---@field evening double
---@field dawn double
---@field ticks_per_day uint
---@field freeze_daytime boolean
---@field get_total_pollution fun():double
---@field find_nearest_enemy any
---@field regenerate_entity fun(entities:string,chunks:ChunkPosition[])
---@field get_entities_with_force fun(position:ChunkPosition,force:LuaForce):LuaEntity
---@field peaceful_mode boolean
---@field map_gen_settings MapGenSettings
---@field get_pollution fun(position:Position):double
---@field find_tiles_filtered any
---@field clear fun(ignore_characters:boolean)
---@field can_fast_replace any
---@field daytime float
---@field index uint
---@field name string
---@field request_path any
---@field count_tiles_filtered any
---@field find_logistic_networks_by_construction_area fun(position:Position,force:ForceSpecification):LuaLogisticNetwork
---@field get_train_stops fun(opts:__LuaSurface__get_train_stops__opts):LuaEntity[]
---@field get_closest fun(position:Position,entities:LuaEntity[]):LuaEntity
---@field edit_script_position fun(id:uint,area:ScriptPosition)
---@field remove_script_position fun(id:uint):boolean
---@field find_entities fun(area:BoundingBox):LuaEntity[]
---@field decorative_prototype_collides fun(prototype:string,position:Position)
---@field calculate_tile_properties fun(property_names:string[],positions:Position[]):table<string, string>
---@field create_particle any
---@field get_map_exchange_string fun():string
---@field create_entity any
---@field edit_script_area fun(id:uint,area:ScriptArea)
---@field get_script_position fun(key:string):ScriptPosition
---@field remove_script_area fun(id:uint):boolean
---@field wind_orientation float
---@field play_sound any
---@field get_script_areas fun(name:string):ScriptArea[]
---@field create_unit_group any
---@field find_entity fun(entity:string,position:Position):LuaEntity
---@field clone_brush any
---@field get_random_chunk fun():ChunkPosition
---@field add_script_area fun(area:ScriptArea):uint
---@field set_tiles fun(tiles:any[],correct_tiles:boolean,remove_colliding_entities:boolean,remove_colliding_decoratives:boolean,raise_event:boolean)
---@field cancel_deconstruct_area any
---@class LuaChunkIterator
---@field help fun():string
---@field valid boolean
---@class __LuaPermissionGroup__set_allows_action__action
---@class LuaTransportBeltControlBehavior
---@field read_contents boolean
---@field enable_disable boolean
---@field valid boolean
---@field help fun():string
---@field read_contents_mode defines_control_behavior_transport_belt_content_read_mode
---@class LuaShortcutPrototype
---@field help fun():string
---@field localised_name LocalisedString
---@field toggleable boolean
---@field item_to_create LuaItemPrototype
---@field name string
---@field technology_to_unlock LuaTechnologyPrototype
---@field valid boolean
---@field associated_control_input string
---@field action string
---@field localised_description LocalisedString
---@field order string
---@class __LuaEntity__mine__options
---@field raise_destroyed boolean
---@field inventory LuaInventory
---@field ignore_minable boolean
---@field force boolean
---@class LuaForce
---@field deconstruction_time_to_live uint
---@field reset_technologies fun()
---@field inserter_stack_size_bonus double
---@field disable_all_prototypes fun()
---@field zoom_to_world_blueprint_enabled boolean
---@field enable_all_technologies fun()
---@field kill_all_units fun()
---@field laboratory_speed_modifier double
---@field character_logistic_requests boolean
---@field max_failed_attempts_per_tick_per_construction_queue uint
---@field get_train_stops fun(opts:__LuaForce__get_train_stops__opts):LuaEntity[]
---@field set_ammo_damage_modifier fun(ammo:string,modifier:double)
---@field set_saved_technology_progress fun(technology:TechnologySpecification,double:__LuaForce__set_saved_technology_progress__double)
---@field is_pathfinder_busy fun():boolean
---@field set_spawn_position fun(position:Position,surface:SurfaceSpecification)
---@field current_research LuaTechnology
---@field set_cease_fire fun(other:ForceSpecification,cease_fire:boolean)
---@field print fun(message:LocalisedString,color:Color)
---@field research_all_technologies fun(include_disabled_prototypes:__LuaForce__research_all_technologies__include_disabled_prototypes)
---@field maximum_following_robot_count uint
---@field train_braking_force_bonus double
---@field friendly_fire boolean
---@field chart_all fun(surface:SurfaceSpecification)
---@field players LuaPlayer[]
---@field help fun():string
---@field valid boolean
---@field character_item_pickup_distance_bonus double
---@field research_enabled boolean
---@field evolution_factor_by_killing_spawners double
---@field items_launched table<string, string>
---@field index uint
---@field laboratory_productivity_bonus double
---@field find_logistic_network_by_position fun(position:Position,surface:SurfaceSpecification):LuaLogisticNetwork
---@field share_chart boolean
---@field evolution_factor_by_time double
---@field evolution_factor_by_pollution double
---@field evolution_factor double
---@field item_production_statistics LuaFlowStatistics
---@field stack_inserter_capacity_bonus uint
---@field zoom_to_world_enabled boolean
---@field connected_players LuaPlayer[]
---@field is_chunk_visible fun(surface:SurfaceSpecification,position:ChunkPosition):boolean
---@field research_queue TechnologySpecification[]
---@field fluid_production_statistics LuaFlowStatistics
---@field rockets_launched uint
---@field zoom_to_world_selection_tool_enabled boolean
---@field play_sound any
---@field zoom_to_world_deconstruction_planner_enabled boolean
---@field add_chart_tag fun(surface:SurfaceSpecification,tag:__LuaForce__add_chart_tag__tag):LuaCustomChartTag
---@field add_research fun(technology:TechnologySpecification):boolean
---@field get_trains fun(surface:SurfaceSpecification):LuaTrain[]
---@field reset_recipes fun()
---@field mining_drill_productivity_bonus double
---@field ai_controllable boolean
---@field manual_mining_speed_modifier double
---@field auto_character_trash_slots boolean
---@field max_successful_attempts_per_tick_per_construction_queue uint
---@field worker_robots_speed_modifier double
---@field character_health_bonus double
---@field reset fun()
---@field kill_count_statistics LuaFlowStatistics
---@field character_loot_pickup_distance_bonus double
---@field character_resource_reach_distance_bonus double
---@field character_reach_distance_bonus uint
---@field character_item_drop_distance_bonus uint
---@field get_entity_count fun(name:string):uint
---@field character_build_distance_bonus uint
---@field reset_technology_effects fun()
---@field get_item_launched fun(item:string):uint
---@field ghost_time_to_live uint
---@field reset_evolution fun()
---@field set_turret_attack_modifier fun(turret:string,modifier:double)
---@field get_gun_speed_modifier fun(ammo:string):double
---@field character_running_speed_modifier double
---@field name string
---@field previous_research LuaTechnology
---@field character_inventory_slots_bonus uint
---@field chart fun(surface:SurfaceSpecification,area:BoundingBox)
---@field is_chunk_charted fun(surface:SurfaceSpecification,position:ChunkPosition):boolean
---@field research_progress double
---@field following_robots_lifetime_modifier double
---@field get_ammo_damage_modifier fun(ammo:string):double
---@field character_trash_slot_count double
---@field get_spawn_position fun(surface:SurfaceSpecification):Position
---@field set_gun_speed_modifier fun(ammo:string,modifier:double)
---@field get_cease_fire fun(other:ForceSpecification):boolean
---@field get_saved_technology_progress fun(technology:TechnologySpecification):double
---@field entity_build_count_statistics LuaFlowStatistics
---@field set_friend fun(other:ForceSpecification,cease_fire:boolean)
---@field enable_research fun()
---@field cancel_current_research fun()
---@field worker_robots_storage_bonus double
---@field worker_robots_battery_modifier double
---@field logistic_networks table<string, string>
---@field clear_chart fun(surface:SurfaceSpecification)
---@field research_queue_enabled boolean
---@field set_item_launched fun(item:string,count:uint)
---@field disable_research fun()
---@field recipes LuaCustomTable
---@field rechart fun()
---@field get_friend fun(other:ForceSpecification):boolean
---@field artillery_range_modifier double
---@field get_turret_attack_modifier fun(turret:string):double
---@field cancel_charting fun(surface:SurfaceSpecification)
---@field manual_crafting_speed_modifier double
---@field set_hand_crafting_disabled_for_recipe fun(recipe:string,hand_crafting_disabled:boolean)
---@field enable_all_prototypes fun()
---@field find_chart_tags fun(surface:SurfaceSpecification,area:BoundingBox):LuaCustomChartTag
---@field get_hand_crafting_disabled_for_recipe fun(recipe:string):boolean
---@field enable_all_recipes fun()
---@field technologies LuaCustomTable
---@field zoom_to_world_ghost_building_enabled boolean
---@field unchart_chunk fun(position:ChunkPosition,surface:SurfaceSpecification)
---@class LuaRandomGenerator
---@field valid boolean
---@field re_seed fun(seed:uint)
---@field help fun():string
---@class LuaTransportLine
---@field clear fun()
---@field can_insert_at_back fun():boolean
---@field help fun():string
---@field get_contents fun():table<string, string>
---@field input_lines LuaTransportLine[]
---@field get_item_count fun(item:string):uint
---@field owner LuaEntity
---@field insert_at_back fun(items:ItemStackSpecification):boolean
---@field insert_at fun(position:float,items:ItemStackSpecification):boolean
---@field valid boolean
---@field remove_item fun(items:ItemStackSpecification):uint
---@field can_insert_at fun(position:float):boolean
---@field line_equals fun(other:LuaTransportLine):boolean
---@field output_lines LuaTransportLine[]
---@class LuaRCON
---@field object_name string
---@field print fun(message:LocalisedString)
---@class LuaProfiler
---@field help fun():string
---@field reset fun()
---@field stop fun()
---@field add fun(other:LuaProfiler)
---@field valid boolean
---@field restart fun()
---@field divide fun(number:double)
---@class LuaCustomInputPrototype
---@field help fun():string
---@field enabled boolean
---@field localised_name LocalisedString
---@field key_sequence string
---@field name string
---@field valid boolean
---@field linked_game_control string
---@field consuming string
---@field alternative_key_sequence string
---@field localised_description LocalisedString
---@field order string
---@class LuaPlayer
---@field jump_to_cutscene_waypoint fun(waypoint_index:uint)
---@field render_mode defines_render_mode
---@field index uint
---@field valid boolean
---@field is_shortcut_available fun(prototype_name:string):boolean
---@field online_time uint
---@field mod_settings LuaCustomTable
---@field disable_alert fun(alert_type:defines_alert_type):boolean
---@field spectator boolean
---@field open_map fun(position:Position,scale:double)
---@field set_shortcut_toggled fun(prototype_name:string,toggled:boolean)
---@field log_active_entity_counts fun()
---@field set_infinity_inventory_filter fun(index:uint,filter:InfinityInventoryFilter)
---@field print fun(message:LocalisedString,color:Color)
---@field admin boolean
---@field add_custom_alert fun(entity:LuaEntity,icon:SignalID,message:LocalisedString,show_on_map:boolean)
---@field add_alert fun(entity:LuaEntity,type:defines_alert_type)
---@field create_character fun(character:string):boolean
---@field minimap_enabled boolean
---@field unmute_alert fun(alert_type:defines_alert_type):boolean
---@field set_shortcut_available fun(prototype_name:string,available:boolean)
---@field remove_unfiltered_items boolean
---@field game_view_settings GameViewSettings
---@field get_infinity_inventory_filter fun(index:uint):InfinityInventoryFilter
---@field create_local_flying_text any
---@field log_active_entity_chunk_counts fun()
---@field is_alert_enabled fun(alert_type:defines_alert_type):boolean
---@field is_shortcut_toggled fun(prototype_name:string):boolean
---@field disable_recipe_groups fun()
---@field entity_copy_source LuaEntity
---@field play_sound any
---@field display_scale double
---@field gui LuaGui
---@field character LuaEntity
---@field print_robot_jobs fun()
---@field zoom_to_world fun(position:Position,scale:double)
---@field last_online uint
---@field close_map fun()
---@field can_place_entity any
---@field get_associated_characters fun():LuaEntity[]
---@field disassociate_character fun(character:LuaEntity)
---@field connected boolean
---@field enable_recipe_groups fun()
---@field color Color
---@field print_lua_object_statistics fun()
---@field help fun():string
---@field map_view_settings MapViewSettings
---@field zoom double
---@field name string
---@field infinity_inventory_filters InfinityInventoryFilter[]
---@field blueprint_to_setup LuaItemStack
---@field display_resolution DisplayResolution
---@field exit_cutscene fun()
---@field permission_group LuaPermissionGroup
---@field afk_time uint
---@field set_active_quick_bar_page fun(screen_index:uint,page_index:uint)
---@field tag string
---@field chat_color Color
---@field set_quick_bar_slot fun(index:uint,filter:string)
---@field mute_alert fun(alert_type:defines_alert_type):boolean
---@field enable_recipe_subgroups fun()
---@field disable_recipe_subgroups fun()
---@field associate_character fun(character:LuaEntity)
---@field is_alert_muted fun(alert_type:defines_alert_type):boolean
---@field get_goal_description fun():LocalisedString
---@field controller_type defines_controllers
---@field remove_alert any
---@field build_from_cursor any
---@field opened_self boolean
---@field enable_alert fun(alert_type:defines_alert_type):boolean
---@field print_entity_statistics fun(entities:string[])
---@field toggle_map_editor fun()
---@field request_translation fun(localised_string:LocalisedString):boolean
---@field connect_to_server any
---@field ticks_to_respawn uint
---@field get_active_quick_bar_page fun(index:uint):uint8
---@field pipette_entity fun(entity:string):boolean
---@field clean_cursor fun():boolean
---@field get_quick_bar_slot fun(index:uint):LuaItemPrototype
---@field clear_console fun()
---@field can_build_from_cursor any
---@field use_from_cursor fun(position:Position)
---@field unlock_achievement fun(name:string)
---@field set_goal_description fun(text:LocalisedString,only_update:boolean)
---@field set_ending_screen_data fun(message:LocalisedString,file:string)
---@field set_controller any
---@field get_alerts any
---@class __LuaGameScript__get_train_stops__opts
---@field name string
---@field surface string
---@field force string[]
---@class LuaAchievementPrototype
---@field allowed_without_fight boolean
---@field name string
---@field valid boolean
---@field help fun():string
---@field hidden boolean
---@field localised_name LocalisedString
---@field localised_description LocalisedString
---@field order string
---@class __LuaEntity__silent_revive__opts
---@field return_item_request_proxy boolean
---@field raise_revive boolean
---@class __LuaGuiElement__set_item__LocalisedString
---@class LuaNamedNoiseExpression
---@field help fun():string
---@field name string
---@field valid boolean
---@field intended_property string
---@field expression NoiseExpression
---@field localised_name LocalisedString
---@field localised_description LocalisedString
---@field order string
---@class LuaModSettingPrototype
---@field hidden boolean
---@field valid boolean
---@field help fun():string
---@field maximum_value double
---@field localised_name LocalisedString
---@field mod string
---@field allow_blank boolean
---@field allowed_values string
---@field name string
---@field minimum_value double
---@field auto_trim boolean
---@field setting_type string
---@field default_value boolean
---@field localised_description LocalisedString
---@field order string
---@class LuaGenericOnOffControlBehavior
---@field disabled boolean
---@field circuit_condition CircuitConditionSpecification
---@field connect_to_logistic_network boolean
---@field valid boolean
---@field help fun():string
---@field logistic_condition CircuitConditionSpecification
---@class __LuaGameScript__ban_player__reason
---@class __LuaGuiElement__add_item__index
---@class LuaMiningDrillControlBehavior
---@field resource_read_mode defines_control_behavior_mining_drill_resource_read_mode
---@field resource_read_targets LuaEntity[]
---@field circuit_read_resources boolean
---@field valid boolean
---@field help fun():string
---@field circuit_enable_disable boolean
---@class LuaCircuitNetwork
---@field network_id uint
---@field help fun():string
---@field get_signal fun(signal:SignalID):int
---@field connected_circuit_count uint
---@field wire_type defines_wire_type
---@field signals Signal[]
---@field valid boolean
---@field circuit_connector_id defines_circuit_connector_id
---@field entity LuaEntity
@s-lindenau

Copy link
Copy Markdown

Thanks @factubsio this is a great help to getting autocomplete in Intellij IDEA with the EmmyLua plugin.
Any chance you can share the code that generated this, so we can keep it up to date with the latest Factorio releases?
(i assume you generated this from their published HTML lua apidocs?)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment