typed-factorio 0.13.0 → 0.14.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,5 @@
1
+ // This is an auto-generated file. Do not edit directly!
2
+
1
3
  /** @noSelfInFile */
2
4
 
3
5
  /**
@@ -17,7 +19,7 @@
17
19
  * Furthermore, when an API function expects a localised string, it will also accept a regular string (i.e. not a table)
18
20
  * which will not be translated, as well as a number or boolean, which will be converted to their textual representation.
19
21
  *
20
- * {@link https://lua-api.factorio.com/next/Concepts.html#LocalisedString View documentation}
22
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#LocalisedString View documentation}
21
23
  *
22
24
  * @example
23
25
  * In the English translation, this will print `"No ammo"`; in the Czech translation, it will print `"Bez munice"`:
@@ -67,7 +69,7 @@ interface LogisticParameters {
67
69
  *
68
70
  * For example then, a value of `0.625` would indicate "south-west", and a value of `0.875` would indicate "north-west".
69
71
  *
70
- * {@link https://lua-api.factorio.com/next/Concepts.html#RealOrientation View documentation}
72
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#RealOrientation View documentation}
71
73
  */
72
74
  type RealOrientation = float
73
75
 
@@ -82,7 +84,7 @@ type PositionArray = readonly [x: int, y: int]
82
84
  * Coordinates of a tile in a map. Positions may be specified either as a dictionary with `x`, `y` as keys, or simply as
83
85
  * an array with two elements.
84
86
  *
85
- * {@link https://lua-api.factorio.com/next/Concepts.html#Position View documentation}
87
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#Position View documentation}
86
88
  *
87
89
  * @example
88
90
  * Explicit definition:
@@ -103,7 +105,7 @@ type Position = PositionTable | PositionArray
103
105
  * Coordinates of an entity on a map. This uses the same format as {@link Position}, meaning it can be specified either
104
106
  * with or without explicit keys.
105
107
  *
106
- * {@link https://lua-api.factorio.com/next/Concepts.html#MapPosition View documentation}
108
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#MapPosition View documentation}
107
109
  */
108
110
  interface MapPosition {
109
111
  readonly x: double
@@ -122,7 +124,7 @@ type ChunkPositionArray = readonly [x: int, y: int]
122
124
  * same format as {@link Position}, meaning it can be specified either with or without explicit keys. A {@link Position}
123
125
  * can be translated to a ChunkPosition by dividing the `x`/`y` values by 32.
124
126
  *
125
- * {@link https://lua-api.factorio.com/next/Concepts.html#ChunkPosition View documentation}
127
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#ChunkPosition View documentation}
126
128
  */
127
129
  type ChunkPosition = ChunkPositionTable | ChunkPositionArray
128
130
 
@@ -138,7 +140,7 @@ type TilePositionArray = readonly [x: int, y: int]
138
140
  * uses the same format as {@link Position} except it rounds any `x`/`y` down to whole numbers. It can be specified
139
141
  * either with or without explicit keys.
140
142
  *
141
- * {@link https://lua-api.factorio.com/next/Concepts.html#TilePosition View documentation}
143
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#TilePosition View documentation}
142
144
  */
143
145
  type TilePosition = TilePositionTable | TilePositionArray
144
146
 
@@ -153,14 +155,14 @@ type GuiLocationArray = readonly [x: int, y: int]
153
155
  * Screen coordinates of a GUI element in a {@link LuaGui}. This uses the same format as {@link Position} except it rounds
154
156
  * any `x`/`y` down to whole numbers. It can be specified either with or without explicit keys.
155
157
  *
156
- * {@link https://lua-api.factorio.com/next/Concepts.html#GuiLocation View documentation}
158
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#GuiLocation View documentation}
157
159
  */
158
160
  type GuiLocation = GuiLocationTable | GuiLocationArray
159
161
 
160
162
  /**
161
163
  * A {@link ChunkPosition} with an added bounding box for the area of the chunk.
162
164
  *
163
- * {@link https://lua-api.factorio.com/next/Concepts.html#ChunkPositionAndArea View documentation}
165
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#ChunkPositionAndArea View documentation}
164
166
  */
165
167
  interface ChunkPositionAndArea {
166
168
  readonly x: int
@@ -171,7 +173,7 @@ interface ChunkPositionAndArea {
171
173
  /**
172
174
  * A table used to define a manual shape for a piece of equipment.
173
175
  *
174
- * {@link https://lua-api.factorio.com/next/Concepts.html#EquipmentPoint View documentation}
176
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#EquipmentPoint View documentation}
175
177
  */
176
178
  interface EquipmentPoint {
177
179
  readonly x: uint
@@ -205,7 +207,7 @@ interface OldTileAndPosition {
205
207
  /**
206
208
  * A dictionary of string to the four basic Lua types: `string`, `boolean`, `number`, `table`.
207
209
  *
208
- * {@link https://lua-api.factorio.com/next/Concepts.html#Tags View documentation}
210
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#Tags View documentation}
209
211
  *
210
212
  * @example
211
213
  * ```lua
@@ -217,7 +219,7 @@ type Tags = Record<string, AnyBasic | undefined>
217
219
  /**
218
220
  * **Note**: The vectors for all 5 position attributes are a table with `x` and `y` keys instead of an array.
219
221
  *
220
- * {@link https://lua-api.factorio.com/next/Concepts.html#SmokeSource View documentation}
222
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#SmokeSource View documentation}
221
223
  */
222
224
  interface SmokeSource {
223
225
  readonly name: string
@@ -245,7 +247,7 @@ interface SmokeSource {
245
247
  * A vector is a two-element array containing the `x` and `y` components. In some specific cases, the vector is a table
246
248
  * with `x` and `y` keys instead, which the documentation will point out.
247
249
  *
248
- * {@link https://lua-api.factorio.com/next/Concepts.html#Vector View documentation}
250
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#Vector View documentation}
249
251
  *
250
252
  * @example
251
253
  * ```lua
@@ -267,7 +269,7 @@ type BoundingBoxArray = readonly [left_top: Position, right_bottom: Position, or
267
269
  * the names of the members may be omitted. When read from the game, the third member `orientation` is present if it is
268
270
  * non-zero, however it is ignored when provided to the game.
269
271
  *
270
- * {@link https://lua-api.factorio.com/next/Concepts.html#BoundingBox View documentation}
272
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#BoundingBox View documentation}
271
273
  *
272
274
  * @example
273
275
  * Explicit definition:
@@ -286,7 +288,7 @@ type BoundingBox = BoundingBoxTable | BoundingBoxArray
286
288
  /**
287
289
  * An area defined using the map editor.
288
290
  *
289
- * {@link https://lua-api.factorio.com/next/Concepts.html#ScriptArea View documentation}
291
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#ScriptArea View documentation}
290
292
  */
291
293
  interface ScriptArea {
292
294
  readonly area: BoundingBox
@@ -298,7 +300,7 @@ interface ScriptArea {
298
300
  /**
299
301
  * A position defined using the map editor.
300
302
  *
301
- * {@link https://lua-api.factorio.com/next/Concepts.html#ScriptPosition View documentation}
303
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#ScriptPosition View documentation}
302
304
  */
303
305
  interface ScriptPosition {
304
306
  readonly position: Position
@@ -323,7 +325,7 @@ type ColorArray = readonly [r?: float, g?: float, b?: float, a?: float]
323
325
  * Similar to {@link Position}, Color allows the short-hand notation of passing an array of exactly 3 or 4 numbers. The
324
326
  * game usually expects colors to be in pre-multiplied form (color channels are pre-multiplied by alpha).
325
327
  *
326
- * {@link https://lua-api.factorio.com/next/Concepts.html#Color View documentation}
328
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#Color View documentation}
327
329
  *
328
330
  * @example
329
331
  * ```lua
@@ -348,7 +350,7 @@ type ColorModifierArray = readonly [r?: float, g?: float, b?: float, a?: float]
348
350
  * Same as {@link Color}, but red, green, blue and alpha values can be any floating point number, without any special
349
351
  * handling of the range [1, 255].
350
352
  *
351
- * {@link https://lua-api.factorio.com/next/Concepts.html#ColorModifier View documentation}
353
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#ColorModifier View documentation}
352
354
  */
353
355
  type ColorModifier = ColorModifierTable | ColorModifierArray
354
356
 
@@ -376,7 +378,7 @@ interface Alert {
376
378
  /**
377
379
  * One vertex of a ScriptRenderPolygon.
378
380
  *
379
- * {@link https://lua-api.factorio.com/next/Concepts.html#ScriptRenderVertexTarget View documentation}
381
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#ScriptRenderVertexTarget View documentation}
380
382
  */
381
383
  interface ScriptRenderVertexTarget {
382
384
  readonly target: Position | LuaEntity
@@ -420,7 +422,7 @@ interface DecorativeResult {
420
422
  /**
421
423
  * **Note**: Either `icon`, `text`, or both must be provided.
422
424
  *
423
- * {@link https://lua-api.factorio.com/next/Concepts.html#ChartTagSpec View documentation}
425
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#ChartTagSpec View documentation}
424
426
  */
425
427
  interface ChartTagSpec {
426
428
  readonly position: Position
@@ -433,75 +435,75 @@ interface ChartTagSpec {
433
435
  * Parameters that affect the look and control of the game. Updating any of the member attributes here will immediately
434
436
  * take effect in the game engine.
435
437
  *
436
- * {@link https://lua-api.factorio.com/next/Concepts.html#GameViewSettings View documentation}
438
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#GameViewSettings View documentation}
437
439
  */
438
440
  interface GameViewSettings {
439
441
  /**
440
442
  * Show the controller GUI elements. This includes the toolbar, the selected tool slot, the armour slot, and the gun
441
443
  * and ammunition slots.
442
444
  *
443
- * {@link https://lua-api.factorio.com/next/Concepts.html#GameViewSettings#GameViewSettings.show_controller_gui View documentation}
445
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#GameViewSettings#GameViewSettings.show_controller_gui View documentation}
444
446
  */
445
447
  show_controller_gui: boolean
446
448
  /**
447
449
  * Show the chart in the upper right-hand corner of the screen.
448
450
  *
449
- * {@link https://lua-api.factorio.com/next/Concepts.html#GameViewSettings#GameViewSettings.show_minimap View documentation}
451
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#GameViewSettings#GameViewSettings.show_minimap View documentation}
450
452
  */
451
453
  show_minimap: boolean
452
454
  /**
453
455
  * Show research progress and name in the upper right-hand corner of the screen.
454
456
  *
455
- * {@link https://lua-api.factorio.com/next/Concepts.html#GameViewSettings#GameViewSettings.show_research_info View documentation}
457
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#GameViewSettings#GameViewSettings.show_research_info View documentation}
456
458
  */
457
459
  show_research_info: boolean
458
460
  /**
459
461
  * Show overlay icons on entities. Also known as "alt-mode".
460
462
  *
461
- * {@link https://lua-api.factorio.com/next/Concepts.html#GameViewSettings#GameViewSettings.show_entity_info View documentation}
463
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#GameViewSettings#GameViewSettings.show_entity_info View documentation}
462
464
  */
463
465
  show_entity_info: boolean
464
466
  /**
465
467
  * Show the flashing alert icons next to the player's toolbar.
466
468
  *
467
- * {@link https://lua-api.factorio.com/next/Concepts.html#GameViewSettings#GameViewSettings.show_alert_gui View documentation}
469
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#GameViewSettings#GameViewSettings.show_alert_gui View documentation}
468
470
  */
469
471
  show_alert_gui: boolean
470
472
  /**
471
473
  * When `true` (the default), mousing over an entity will select it. Otherwise, moving the mouse won't update entity
472
474
  * selection.
473
475
  *
474
- * {@link https://lua-api.factorio.com/next/Concepts.html#GameViewSettings#GameViewSettings.update_entity_selection View documentation}
476
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#GameViewSettings#GameViewSettings.update_entity_selection View documentation}
475
477
  */
476
478
  update_entity_selection: boolean
477
479
  /**
478
480
  * When `true` (`false` is default), the rails will always show the rail block visualisation.
479
481
  *
480
- * {@link https://lua-api.factorio.com/next/Concepts.html#GameViewSettings#GameViewSettings.show_rail_block_visualisation View documentation}
482
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#GameViewSettings#GameViewSettings.show_rail_block_visualisation View documentation}
481
483
  */
482
484
  show_rail_block_visualisation: boolean
483
485
  /**
484
486
  * Shows or hides the buttons row.
485
487
  *
486
- * {@link https://lua-api.factorio.com/next/Concepts.html#GameViewSettings#GameViewSettings.show_side_menu View documentation}
488
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#GameViewSettings#GameViewSettings.show_side_menu View documentation}
487
489
  */
488
490
  show_side_menu: boolean
489
491
  /**
490
492
  * Shows or hides the view options when map is opened.
491
493
  *
492
- * {@link https://lua-api.factorio.com/next/Concepts.html#GameViewSettings#GameViewSettings.show_map_view_options View documentation}
494
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#GameViewSettings#GameViewSettings.show_map_view_options View documentation}
493
495
  */
494
496
  show_map_view_options: boolean
495
497
  /**
496
498
  * Shows or hides quickbar of shortcuts.
497
499
  *
498
- * {@link https://lua-api.factorio.com/next/Concepts.html#GameViewSettings#GameViewSettings.show_quickbar View documentation}
500
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#GameViewSettings#GameViewSettings.show_quickbar View documentation}
499
501
  */
500
502
  show_quickbar: boolean
501
503
  /**
502
504
  * Shows or hides the shortcut bar.
503
505
  *
504
- * {@link https://lua-api.factorio.com/next/Concepts.html#GameViewSettings#GameViewSettings.show_shortcut_bar View documentation}
506
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#GameViewSettings#GameViewSettings.show_shortcut_bar View documentation}
505
507
  */
506
508
  show_shortcut_bar: boolean
507
509
  }
@@ -509,7 +511,7 @@ interface GameViewSettings {
509
511
  /**
510
512
  * What is shown in the map view. If a field is not given, that setting will not be changed.
511
513
  *
512
- * {@link https://lua-api.factorio.com/next/Concepts.html#MapViewSettings View documentation}
514
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#MapViewSettings View documentation}
513
515
  */
514
516
  interface MapViewSettings {
515
517
  readonly "show-logistic-network"?: boolean
@@ -525,7 +527,7 @@ interface MapViewSettings {
525
527
  /**
526
528
  * These values are for the time frame of one second (60 ticks).
527
529
  *
528
- * {@link https://lua-api.factorio.com/next/Concepts.html#PollutionMapSettings View documentation}
530
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#PollutionMapSettings View documentation}
529
531
  */
530
532
  interface PollutionMapSettings {
531
533
  /** Whether pollution is enabled at all. */
@@ -560,7 +562,7 @@ interface PollutionMapSettings {
560
562
  /**
561
563
  * These values represent a percentual increase in evolution. This means a value of `0.1` would increase evolution by 10%.
562
564
  *
563
- * {@link https://lua-api.factorio.com/next/Concepts.html#EnemyEvolutionMapSettings View documentation}
565
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#EnemyEvolutionMapSettings View documentation}
564
566
  */
565
567
  interface EnemyEvolutionMapSettings {
566
568
  /** Whether enemy evolution is enabled at all. */
@@ -597,7 +599,7 @@ interface EnemyEvolutionMapSettings {
597
599
  * score(chunk) = 1 / (1 + player + base)
598
600
  * ```
599
601
  *
600
- * {@link https://lua-api.factorio.com/next/Concepts.html#EnemyExpansionMapSettings View documentation}
602
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#EnemyExpansionMapSettings View documentation}
601
603
  */
602
604
  interface EnemyExpansionMapSettings {
603
605
  /** Whether enemy expansion is enabled at all. */
@@ -831,7 +833,7 @@ interface PathFinderMapSettings {
831
833
  /**
832
834
  * Various game-related settings. Updating any of the attributes will immediately take effect in the game engine.
833
835
  *
834
- * {@link https://lua-api.factorio.com/next/Concepts.html#MapSettings View documentation}
836
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#MapSettings View documentation}
835
837
  *
836
838
  * @example
837
839
  * Increase the number of short paths the pathfinder can cache.
@@ -857,7 +859,7 @@ interface MapSettings {
857
859
  /**
858
860
  * Technology and recipe difficulty settings. Updating any of the attributes will immediately take effect in the game engine.
859
861
  *
860
- * {@link https://lua-api.factorio.com/next/Concepts.html#DifficultySettings View documentation}
862
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#DifficultySettings View documentation}
861
863
  */
862
864
  interface DifficultySettings {
863
865
  readonly recipe_difficulty: defines.difficulty_settings.recipe_difficulty
@@ -872,16 +874,32 @@ interface DifficultySettings {
872
874
  }
873
875
 
874
876
  /**
875
- * The data that can be extracted from a map exchange string, as a plain table.
877
+ * All regular {@link MapSettings} plus an additional table that contains the {@link DifficultySettings}.
876
878
  *
877
- * {@link https://lua-api.factorio.com/next/Concepts.html#MapExchangeStringData View documentation}
879
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#MapAndDifficultySettings View documentation}
878
880
  */
879
- interface MapExchangeStringData {
881
+ interface MapAndDifficultySettings {
882
+ readonly pollution: PollutionMapSettings
883
+ readonly enemy_evolution: EnemyEvolutionMapSettings
884
+ readonly enemy_expansion: EnemyExpansionMapSettings
885
+ readonly unit_group: UnitGroupMapSettings
886
+ readonly steering: SteeringMapSettings
887
+ readonly path_finder: PathFinderMapSettings
880
888
  /**
881
- * All the regular map settings plus an additional table called `difficulty_settings` that contains the
882
- * {@link DifficultySettings}.
889
+ * If a behavior fails this many times, the enemy (or enemy group) is destroyed. This solves biters getting stuck
890
+ * within their own base.
883
891
  */
884
- readonly map_settings: MapSettings
892
+ readonly max_failed_behavior_count: uint
893
+ readonly difficulty_settings: DifficultySettings
894
+ }
895
+
896
+ /**
897
+ * The data that can be extracted from a map exchange string, as a plain table.
898
+ *
899
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#MapExchangeStringData View documentation}
900
+ */
901
+ interface MapExchangeStringData {
902
+ readonly map_settings: MapAndDifficultySettings
885
903
  readonly map_gen_settings: MapGenSettings
886
904
  }
887
905
 
@@ -945,7 +963,7 @@ interface BlueprintCircuitConnection {
945
963
  * The representation of an entity inside of a blueprint. It has at least these fields, but can contain additional ones
946
964
  * depending on the kind of entity.
947
965
  *
948
- * {@link https://lua-api.factorio.com/next/Concepts.html#BlueprintEntity View documentation}
966
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#BlueprintEntity View documentation}
949
967
  */
950
968
  interface BlueprintEntity {
951
969
  /** The entity's unique identifier in the blueprint. */
@@ -1026,7 +1044,7 @@ interface ItemIngredient extends BaseIngredient {
1026
1044
  /**
1027
1045
  * Other attributes may be specified depending on `type`:
1028
1046
  *
1029
- * {@link https://lua-api.factorio.com/next/Concepts.html#Ingredient View documentation}
1047
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#Ingredient View documentation}
1030
1048
  */
1031
1049
  type Ingredient = FluidIngredient | ItemIngredient
1032
1050
 
@@ -1060,7 +1078,7 @@ interface ItemProduct extends BaseProduct {
1060
1078
  /**
1061
1079
  * Other attributes may be specified depending on `type`:
1062
1080
  *
1063
- * {@link https://lua-api.factorio.com/next/Concepts.html#Product View documentation}
1081
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#Product View documentation}
1064
1082
  *
1065
1083
  * @example
1066
1084
  * Products of the "steel-chest" recipe (an array of Product):
@@ -1261,7 +1279,7 @@ interface OtherTechnologyModifier extends BaseTechnologyModifier {
1261
1279
  *
1262
1280
  * Other attributes may be specified depending on `type`:
1263
1281
  *
1264
- * {@link https://lua-api.factorio.com/next/Concepts.html#TechnologyModifier View documentation}
1282
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#TechnologyModifier View documentation}
1265
1283
  */
1266
1284
  type TechnologyModifier =
1267
1285
  | GunSpeedTechnologyModifier
@@ -1275,7 +1293,7 @@ type TechnologyModifier =
1275
1293
  /**
1276
1294
  * A single offer on a market entity.
1277
1295
  *
1278
- * {@link https://lua-api.factorio.com/next/Concepts.html#Offer View documentation}
1296
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#Offer View documentation}
1279
1297
  */
1280
1298
  interface Offer {
1281
1299
  /** List of prices. */
@@ -1288,7 +1306,7 @@ interface Offer {
1288
1306
  * Specifies how probability and richness are calculated when placing something on the map. Can be specified either
1289
1307
  * using `probability_expression` and `richness_expression` or by using all the other fields.
1290
1308
  *
1291
- * {@link https://lua-api.factorio.com/next/Concepts.html#AutoplaceSpecification View documentation}
1309
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#AutoplaceSpecification View documentation}
1292
1310
  */
1293
1311
  interface AutoplaceSpecification {
1294
1312
  readonly probability_expression: NoiseExpression
@@ -1316,7 +1334,7 @@ interface AutoplaceSpecification {
1316
1334
  * generation. These can only be meaningfully written/modified during the data load phase. More detailed information is
1317
1335
  * found on the {@link https://wiki.factorio.com/Types/NoiseExpression wiki}.
1318
1336
  *
1319
- * {@link https://lua-api.factorio.com/next/Concepts.html#NoiseExpression View documentation}
1337
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#NoiseExpression View documentation}
1320
1338
  */
1321
1339
  interface NoiseExpression {
1322
1340
  /** Names the type of the expression and determines what other fields are required. */
@@ -1392,7 +1410,7 @@ interface Resistance {
1392
1410
  * **Note**: The map generation algorithm officially supports the range of values the in-game map generation screen
1393
1411
  * shows (specifically `0` and values from `1/6` to `6`). Values outside this range are not guaranteed to work as expected.
1394
1412
  *
1395
- * {@link https://lua-api.factorio.com/next/Concepts.html#MapGenSize View documentation}
1413
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#MapGenSize View documentation}
1396
1414
  */
1397
1415
  type MapGenSize =
1398
1416
  | number
@@ -1481,7 +1499,7 @@ interface CliffPlacementSettings {
1481
1499
  * the island preset. If generators are available for other properties, the 'map type' dropdown in the GUI will be
1482
1500
  * renamed to 'elevation' and shown along with selectors for the other selectable properties.
1483
1501
  *
1484
- * {@link https://lua-api.factorio.com/next/Concepts.html#MapGenSettings View documentation}
1502
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#MapGenSettings View documentation}
1485
1503
  *
1486
1504
  * @example
1487
1505
  * Assuming a NamedNoiseExpression with the name "my-alternate-grass1-probability" is defined
@@ -1592,7 +1610,7 @@ interface SignalID {
1592
1610
  /**
1593
1611
  * An actual signal transmitted by the network.
1594
1612
  *
1595
- * {@link https://lua-api.factorio.com/next/Concepts.html#Signal View documentation}
1613
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#Signal View documentation}
1596
1614
  */
1597
1615
  interface Signal {
1598
1616
  /** ID of the signal. */
@@ -1611,7 +1629,7 @@ interface UpgradeFilter {
1611
1629
  /**
1612
1630
  * A single filter used by an infinity-filters instance.
1613
1631
  *
1614
- * {@link https://lua-api.factorio.com/next/Concepts.html#InfinityInventoryFilter View documentation}
1632
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#InfinityInventoryFilter View documentation}
1615
1633
  */
1616
1634
  interface InfinityInventoryFilter {
1617
1635
  /** Name of the item. */
@@ -1627,7 +1645,7 @@ interface InfinityInventoryFilter {
1627
1645
  /**
1628
1646
  * A single filter used by an infinity-pipe type entity.
1629
1647
  *
1630
- * {@link https://lua-api.factorio.com/next/Concepts.html#InfinityPipeFilter View documentation}
1648
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#InfinityPipeFilter View documentation}
1631
1649
  */
1632
1650
  interface InfinityPipeFilter {
1633
1651
  /** Name of the fluid. */
@@ -1663,7 +1681,7 @@ interface FluidBoxFilterSpec {
1663
1681
  /**
1664
1682
  * The settings used by a heat-interface type entity.
1665
1683
  *
1666
- * {@link https://lua-api.factorio.com/next/Concepts.html#HeatSetting View documentation}
1684
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#HeatSetting View documentation}
1667
1685
  */
1668
1686
  interface HeatSetting {
1669
1687
  /** The target temperature. Defaults to the minimum temperature of the heat buffer. */
@@ -1680,7 +1698,7 @@ interface HeatConnection {
1680
1698
  /**
1681
1699
  * A definition of a fluidbox connection point.
1682
1700
  *
1683
- * {@link https://lua-api.factorio.com/next/Concepts.html#FluidBoxConnection View documentation}
1701
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#FluidBoxConnection View documentation}
1684
1702
  */
1685
1703
  interface FluidBoxConnection {
1686
1704
  /** The connection type: "input", "output", or "input-output". */
@@ -1724,7 +1742,7 @@ interface ConstantCombinatorParameters {
1724
1742
  * **Note**: While the API accepts both versions for `"less/greater than or equal to"` and `"not equal"`, it'll always
1725
1743
  * return `"≥"`, `"≤"` or `"≠"` respectively when reading them back.
1726
1744
  *
1727
- * {@link https://lua-api.factorio.com/next/Concepts.html#ComparatorString View documentation}
1745
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#ComparatorString View documentation}
1728
1746
  */
1729
1747
  type ComparatorString /** "equal to" */ =
1730
1748
  | "=" /** "greater than" */
@@ -1925,7 +1943,7 @@ interface BuildBaseCommand extends BaseCommand {
1925
1943
  *
1926
1944
  * Other attributes may be specified depending on `type`:
1927
1945
  *
1928
- * {@link https://lua-api.factorio.com/next/Concepts.html#Command View documentation}
1946
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#Command View documentation}
1929
1947
  */
1930
1948
  type Command =
1931
1949
  | AttackCommand
@@ -1995,7 +2013,7 @@ interface ItemStackDefinition {
1995
2013
  * - String: The name of the item, which represents a full stack of that item.
1996
2014
  * - ItemStackDefinition: The detailed definition of an item stack.
1997
2015
  *
1998
- * {@link https://lua-api.factorio.com/next/Concepts.html#SimpleItemStack View documentation}
2016
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#SimpleItemStack View documentation}
1999
2017
  *
2000
2018
  * @example
2001
2019
  * Both of these lines specify an item stack of one iron plate:
@@ -2033,7 +2051,7 @@ type SimpleItemStack = string | ItemStackDefinition
2033
2051
  * - LuaFluidPrototype: The fluid prototype.
2034
2052
  * - Fluid: The fluid.
2035
2053
  *
2036
- * {@link https://lua-api.factorio.com/next/Concepts.html#FluidIdentification View documentation}
2054
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#FluidIdentification View documentation}
2037
2055
  */
2038
2056
  type FluidIdentification = string | LuaFluidPrototype | Fluid
2039
2057
 
@@ -2041,7 +2059,7 @@ type FluidIdentification = string | LuaFluidPrototype | Fluid
2041
2059
  * - String: The force name.
2042
2060
  * - LuaForce: A reference to {@link LuaForce} may be passed directly.
2043
2061
  *
2044
- * {@link https://lua-api.factorio.com/next/Concepts.html#ForceIdentification View documentation}
2062
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#ForceIdentification View documentation}
2045
2063
  */
2046
2064
  type ForceIdentification = string | LuaForce
2047
2065
 
@@ -2050,7 +2068,7 @@ type ForceIdentification = string | LuaForce
2050
2068
  * - LuaTechnology: A reference to {@link LuaTechnology} may be passed directly.
2051
2069
  * - LuaTechnologyPrototype: A reference to {@link LuaTechnologyPrototype} may be passed directly.
2052
2070
  *
2053
- * {@link https://lua-api.factorio.com/next/Concepts.html#TechnologyIdentification View documentation}
2071
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#TechnologyIdentification View documentation}
2054
2072
  */
2055
2073
  type TechnologyIdentification = string | LuaTechnology | LuaTechnologyPrototype
2056
2074
 
@@ -2060,7 +2078,7 @@ type TechnologyIdentification = string | LuaTechnology | LuaTechnologyPrototype
2060
2078
  * - String: It will be the surface name. E.g. `"nauvis"`.
2061
2079
  * - LuaSurface: A reference to {@link LuaSurface} may be passed directly.
2062
2080
  *
2063
- * {@link https://lua-api.factorio.com/next/Concepts.html#SurfaceIdentification View documentation}
2081
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#SurfaceIdentification View documentation}
2064
2082
  */
2065
2083
  type SurfaceIdentification = uint | string | LuaSurface
2066
2084
 
@@ -2069,7 +2087,7 @@ type SurfaceIdentification = uint | string | LuaSurface
2069
2087
  * - String: The player name.
2070
2088
  * - LuaPlayer: A reference to {@link LuaPlayer} may be passed directly.
2071
2089
  *
2072
- * {@link https://lua-api.factorio.com/next/Concepts.html#PlayerIdentification View documentation}
2090
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#PlayerIdentification View documentation}
2073
2091
  */
2074
2092
  type PlayerIdentification = uint | string | LuaPlayer
2075
2093
 
@@ -2080,7 +2098,7 @@ type ItemStackIdentification = SimpleItemStack | LuaItemStack
2080
2098
  * - LuaEntityPrototype: The entity prototype.
2081
2099
  * - String: The prototype name.
2082
2100
  *
2083
- * {@link https://lua-api.factorio.com/next/Concepts.html#EntityPrototypeIdentification View documentation}
2101
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#EntityPrototypeIdentification View documentation}
2084
2102
  */
2085
2103
  type EntityPrototypeIdentification = LuaEntity | LuaEntityPrototype | string
2086
2104
 
@@ -2089,7 +2107,7 @@ type EntityPrototypeIdentification = LuaEntity | LuaEntityPrototype | string
2089
2107
  * - LuaItemPrototype: The item prototype.
2090
2108
  * - String: The prototype name.
2091
2109
  *
2092
- * {@link https://lua-api.factorio.com/next/Concepts.html#ItemPrototypeIdentification View documentation}
2110
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#ItemPrototypeIdentification View documentation}
2093
2111
  */
2094
2112
  type ItemPrototypeIdentification = LuaItemStack | LuaItemPrototype | string
2095
2113
 
@@ -2207,7 +2225,7 @@ interface ActiveWindowGuiArrowSpecification extends BaseGuiArrowSpecification {
2207
2225
  *
2208
2226
  * Other attributes may be specified depending on `type`:
2209
2227
  *
2210
- * {@link https://lua-api.factorio.com/next/Concepts.html#GuiArrowSpecification View documentation}
2228
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#GuiArrowSpecification View documentation}
2211
2229
  */
2212
2230
  type GuiArrowSpecification =
2213
2231
  | EntityGuiArrowSpecification
@@ -2283,7 +2301,7 @@ type SpriteType =
2283
2301
  * slower; for frequently used sprites, it is better to define sprite prototype and use it instead.
2284
2302
  * - `"utility"` - sprite defined in the utility-sprites object, these are the pictures used by the game internally for the UI.
2285
2303
  *
2286
- * {@link https://lua-api.factorio.com/next/Concepts.html#SpritePath View documentation}
2304
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#SpritePath View documentation}
2287
2305
  */
2288
2306
  type SpritePath = string | `${SpriteType}/${string}`
2289
2307
 
@@ -2325,7 +2343,7 @@ type SpritePath = string | `${SpriteType}/${string}`
2325
2343
  * - `"entity-open"` - Uses {@link https://wiki.factorio.com/Prototype/Entity#open_sound Entity::open_sound}
2326
2344
  * - `"entity-close"` - Uses {@link https://wiki.factorio.com/Prototype/Entity#close_sound Entity::close_sound}
2327
2345
  *
2328
- * {@link https://lua-api.factorio.com/next/Concepts.html#SoundPath View documentation}
2346
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#SoundPath View documentation}
2329
2347
  */
2330
2348
  type SoundPath = string | `${SoundType}/${string}`
2331
2349
 
@@ -2335,7 +2353,7 @@ interface ModuleEffectValue {
2335
2353
  }
2336
2354
 
2337
2355
  /**
2338
- * {@link https://lua-api.factorio.com/next/Concepts.html#ModuleEffects View documentation}
2356
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#ModuleEffects View documentation}
2339
2357
  *
2340
2358
  * @example
2341
2359
  * These are the effects of the vanilla Productivity Module 3 (up to floating point imprecisions):
@@ -2359,7 +2377,7 @@ interface ModuleEffects {
2359
2377
  * the dictionary with the value `true`. Unset flags aren't present in the dictionary at all. So, the boolean value is
2360
2378
  * meaningless and exists just for easy table lookup if a flag is set.
2361
2379
  *
2362
- * {@link https://lua-api.factorio.com/next/Concepts.html#EntityPrototypeFlags View documentation}
2380
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#EntityPrototypeFlags View documentation}
2363
2381
  */
2364
2382
  interface EntityPrototypeFlags {
2365
2383
  readonly "not-rotatable"?: boolean
@@ -2394,7 +2412,7 @@ interface EntityPrototypeFlags {
2394
2412
  * dictionary with the value `true`. Unset flags aren't present in the dictionary at all. So, the boolean value is
2395
2413
  * meaningless and exists just for easy table lookup if a flag is set.
2396
2414
  *
2397
- * {@link https://lua-api.factorio.com/next/Concepts.html#ItemPrototypeFlags View documentation}
2415
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#ItemPrototypeFlags View documentation}
2398
2416
  */
2399
2417
  interface ItemPrototypeFlags {
2400
2418
  readonly "draw-logistic-overlay"?: boolean
@@ -2433,7 +2451,7 @@ interface ItemPrototypeFlags {
2433
2451
  * change. If a mod is going to use one of the unused layers it's recommended to start at the higher layers because the
2434
2452
  * base game will take from the lower ones.
2435
2453
  *
2436
- * {@link https://lua-api.factorio.com/next/Concepts.html#CollisionMaskLayer View documentation}
2454
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#CollisionMaskLayer View documentation}
2437
2455
  */
2438
2456
  type CollisionMaskLayer =
2439
2457
  | "ground-tile"
@@ -2455,7 +2473,7 @@ type CollisionMaskLayer =
2455
2473
  * This is a set of masks given as a dictionary[{@link CollisionMaskLayer} → {@link boolean}]. Only set masks are present
2456
2474
  * in the dictionary and they have the value `true`. Unset flags aren't present at all.
2457
2475
  *
2458
- * {@link https://lua-api.factorio.com/next/Concepts.html#CollisionMask View documentation}
2476
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#CollisionMask View documentation}
2459
2477
  */
2460
2478
  type CollisionMask = {
2461
2479
  readonly [P in CollisionMaskLayer]?: true
@@ -2470,7 +2488,7 @@ type CollisionMask = {
2470
2488
  * - `"consider-tile-transitions"`
2471
2489
  * - `"colliding-with-tiles-only"`
2472
2490
  *
2473
- * {@link https://lua-api.factorio.com/next/Concepts.html#CollisionMaskWithFlags View documentation}
2491
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#CollisionMaskWithFlags View documentation}
2474
2492
  */
2475
2493
  type CollisionMaskWithFlags = {
2476
2494
  readonly [P in
@@ -2483,7 +2501,7 @@ type CollisionMaskWithFlags = {
2483
2501
  /**
2484
2502
  * This is a set of trigger target masks given as a dictionary[{@link string} → {@link boolean}].
2485
2503
  *
2486
- * {@link https://lua-api.factorio.com/next/Concepts.html#TriggerTargetMask View documentation}
2504
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#TriggerTargetMask View documentation}
2487
2505
  */
2488
2506
  type TriggerTargetMask = {
2489
2507
  readonly [P in string]?: true
@@ -2567,7 +2585,7 @@ interface CircularParticleCreationSpecification {
2567
2585
  * - A {@link RealOrientation}
2568
2586
  * - A {@link Vector}
2569
2587
  *
2570
- * {@link https://lua-api.factorio.com/next/Concepts.html#CircularProjectileCreationSpecification View documentation}
2588
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#CircularProjectileCreationSpecification View documentation}
2571
2589
  */
2572
2590
  type CircularProjectileCreationSpecification = [RealOrientation, Vector]
2573
2591
 
@@ -2646,7 +2664,7 @@ interface BeamAttackParameters extends BaseAttackParameters {
2646
2664
  /**
2647
2665
  * Other attributes may be specified depending on `type`:
2648
2666
  *
2649
- * {@link https://lua-api.factorio.com/next/Concepts.html#AttackParameters View documentation}
2667
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#AttackParameters View documentation}
2650
2668
  */
2651
2669
  type AttackParameters = ProjectileAttackParameters | StreamAttackParameters | BeamAttackParameters
2652
2670
 
@@ -2663,7 +2681,7 @@ interface CapsuleAction {
2663
2681
  * This is a set of flags given as a dictionary[{@link string} → {@link boolean}]. Set flags are present in the dictionary
2664
2682
  * with the value `true`; unset flags aren't present at all.
2665
2683
  *
2666
- * {@link https://lua-api.factorio.com/next/Concepts.html#SelectionModeFlags View documentation}
2684
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#SelectionModeFlags View documentation}
2667
2685
  */
2668
2686
  interface SelectionModeFlags {
2669
2687
  /** Entities that can be selected for blueprint. */
@@ -2707,7 +2725,7 @@ interface LogisticFilter {
2707
2725
  * **Note**: Runtime settings can be changed through console commands and by the mod that owns the settings by writing a
2708
2726
  * new table to the ModSetting.
2709
2727
  *
2710
- * {@link https://lua-api.factorio.com/next/Concepts.html#ModSetting View documentation}
2728
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#ModSetting View documentation}
2711
2729
  */
2712
2730
  interface ModSetting {
2713
2731
  /** The value of the mod setting. The type depends on the setting. */
@@ -2717,14 +2735,14 @@ interface ModSetting {
2717
2735
  /**
2718
2736
  * Any basic type (string, number, boolean) or table.
2719
2737
  *
2720
- * {@link https://lua-api.factorio.com/next/Concepts.html#AnyBasic View documentation}
2738
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#AnyBasic View documentation}
2721
2739
  */
2722
2740
  type AnyBasic = string | number | boolean | table
2723
2741
 
2724
2742
  /**
2725
2743
  * Any basic type (string, number, boolean), table, or LuaObject.
2726
2744
  *
2727
- * {@link https://lua-api.factorio.com/next/Concepts.html#Any View documentation}
2745
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#Any View documentation}
2728
2746
  */
2729
2747
  type Any = any
2730
2748
 
@@ -2755,7 +2773,7 @@ interface ProgrammableSpeakerInstrument {
2755
2773
  /**
2756
2774
  * A {@link string} that specifies where a gui element should be.
2757
2775
  *
2758
- * {@link https://lua-api.factorio.com/next/Concepts.html#Alignment View documentation}
2776
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#Alignment View documentation}
2759
2777
  */
2760
2778
  type Alignment =
2761
2779
  | "top-left"
@@ -2772,9 +2790,9 @@ type Alignment =
2772
2790
 
2773
2791
  /**
2774
2792
  * Information about the event that has been raised. The table can also contain other fields depending on the type of
2775
- * event. See {@link https://lua-api.factorio.com/next/events.html the list of Factorio events} for more information on these.
2793
+ * event. See {@link https://lua-api.factorio.com/latest/events.html the list of Factorio events} for more information on these.
2776
2794
  *
2777
- * {@link https://lua-api.factorio.com/next/Concepts.html#EventData View documentation}
2795
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#EventData View documentation}
2778
2796
  */
2779
2797
  interface EventData {
2780
2798
  /** The identifier of the event this handler was registered to. */
@@ -2875,14 +2893,14 @@ type MouseButtonFlagsArray = readonly (MouseButtonFlag | "left-and-right")[]
2875
2893
  * - `"button-8"`
2876
2894
  * - `"button-9"`
2877
2895
  *
2878
- * {@link https://lua-api.factorio.com/next/Concepts.html#MouseButtonFlags View documentation}
2896
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#MouseButtonFlags View documentation}
2879
2897
  */
2880
2898
  type MouseButtonFlags = MouseButtonFlagsTable | MouseButtonFlagsArray
2881
2899
 
2882
2900
  /**
2883
2901
  * It is specified by {@link string}.
2884
2902
  *
2885
- * {@link https://lua-api.factorio.com/next/Concepts.html#CursorBoxRenderType View documentation}
2903
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#CursorBoxRenderType View documentation}
2886
2904
  */
2887
2905
  type CursorBoxRenderType /** Yellow box. */ =
2888
2906
  | "entity" /** Red box. */
@@ -2897,7 +2915,7 @@ type CursorBoxRenderType /** Yellow box. */ =
2897
2915
  /**
2898
2916
  * It is specified by {@link string}.
2899
2917
  *
2900
- * {@link https://lua-api.factorio.com/next/Concepts.html#ForceCondition View documentation}
2918
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#ForceCondition View documentation}
2901
2919
  */
2902
2920
  type ForceCondition /** All forces pass. */ =
2903
2921
  | "all" /** Forces which will attack pass. */
@@ -2956,7 +2974,7 @@ type ForceCondition /** All forces pass. */ =
2956
2974
  * - `"arrow"`: 190
2957
2975
  * - `"cursor"`: 210
2958
2976
  *
2959
- * {@link https://lua-api.factorio.com/next/Concepts.html#RenderLayer View documentation}
2977
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#RenderLayer View documentation}
2960
2978
  */
2961
2979
  type RenderLayer =
2962
2980
  | number
@@ -3040,7 +3058,7 @@ interface VehicleAutomaticTargetingParameters {
3040
3058
  * Defines which slider in the game's sound settings affects the volume of this sound. Furthermore, some sound types are
3041
3059
  * mixed differently than others, e.g. zoom level effects are applied.
3042
3060
  *
3043
- * {@link https://lua-api.factorio.com/next/Concepts.html#SoundType View documentation}
3061
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#SoundType View documentation}
3044
3062
  */
3045
3063
  type SoundType = "game-effect" | "gui-effect" | "ambient" | "environment" | "walking" | "alert" | "wind"
3046
3064
 
@@ -3237,7 +3255,7 @@ interface FuelItemPrototypeFilter extends BaseItemPrototypeFilter {
3237
3255
  /**
3238
3256
  * Other attributes may be specified depending on `filter`:
3239
3257
  *
3240
- * {@link https://lua-api.factorio.com/next/Concepts.html#ItemPrototypeFilter View documentation}
3258
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#ItemPrototypeFilter View documentation}
3241
3259
  */
3242
3260
  type ItemPrototypeFilter =
3243
3261
  | PlaceResultItemPrototypeFilter
@@ -3297,7 +3315,7 @@ interface SettingTypeModSettingPrototypeFilter extends BaseModSettingPrototypeFi
3297
3315
  /**
3298
3316
  * Other attributes may be specified depending on `filter`:
3299
3317
  *
3300
- * {@link https://lua-api.factorio.com/next/Concepts.html#ModSettingPrototypeFilter View documentation}
3318
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#ModSettingPrototypeFilter View documentation}
3301
3319
  */
3302
3320
  type ModSettingPrototypeFilter =
3303
3321
  | TypeModSettingPrototypeFilter
@@ -3383,7 +3401,7 @@ interface HasPrerequisitesTechnologyPrototypeFilter extends BaseTechnologyProtot
3383
3401
  /**
3384
3402
  * Other attributes may be specified depending on `filter`:
3385
3403
  *
3386
- * {@link https://lua-api.factorio.com/next/Concepts.html#TechnologyPrototypeFilter View documentation}
3404
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#TechnologyPrototypeFilter View documentation}
3387
3405
  */
3388
3406
  type TechnologyPrototypeFilter =
3389
3407
  | ResearchUnitIngredientTechnologyPrototypeFilter
@@ -3427,7 +3445,7 @@ interface AutoplaceDecorativePrototypeFilter extends BaseDecorativePrototypeFilt
3427
3445
  /**
3428
3446
  * Other attributes may be specified depending on `filter`:
3429
3447
  *
3430
- * {@link https://lua-api.factorio.com/next/Concepts.html#DecorativePrototypeFilter View documentation}
3448
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#DecorativePrototypeFilter View documentation}
3431
3449
  */
3432
3450
  type DecorativePrototypeFilter =
3433
3451
  | CollisionMaskDecorativePrototypeFilter
@@ -3459,7 +3477,7 @@ interface AllowedWithoutFightAchievementPrototypeFilter extends BaseAchievementP
3459
3477
  /**
3460
3478
  * Other attributes may be specified depending on `filter`:
3461
3479
  *
3462
- * {@link https://lua-api.factorio.com/next/Concepts.html#AchievementPrototypeFilter View documentation}
3480
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#AchievementPrototypeFilter View documentation}
3463
3481
  */
3464
3482
  type AchievementPrototypeFilter = TypeAchievementPrototypeFilter | AllowedWithoutFightAchievementPrototypeFilter
3465
3483
 
@@ -3552,7 +3570,7 @@ interface HiddenFluidPrototypeFilter extends BaseFluidPrototypeFilter {
3552
3570
  /**
3553
3571
  * Other attributes may be specified depending on `filter`:
3554
3572
  *
3555
- * {@link https://lua-api.factorio.com/next/Concepts.html#FluidPrototypeFilter View documentation}
3573
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#FluidPrototypeFilter View documentation}
3556
3574
  */
3557
3575
  type FluidPrototypeFilter =
3558
3576
  | NameFluidPrototypeFilter
@@ -3590,7 +3608,7 @@ interface ItemToPlaceEquipmentPrototypeFilter extends BaseEquipmentPrototypeFilt
3590
3608
  /**
3591
3609
  * Other attributes may be specified depending on `filter`:
3592
3610
  *
3593
- * {@link https://lua-api.factorio.com/next/Concepts.html#EquipmentPrototypeFilter View documentation}
3611
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#EquipmentPrototypeFilter View documentation}
3594
3612
  */
3595
3613
  type EquipmentPrototypeFilter = TypeEquipmentPrototypeFilter | ItemToPlaceEquipmentPrototypeFilter
3596
3614
 
@@ -3673,7 +3691,7 @@ interface ItemToPlaceTilePrototypeFilter extends BaseTilePrototypeFilter {
3673
3691
  /**
3674
3692
  * Other attributes may be specified depending on `filter`:
3675
3693
  *
3676
- * {@link https://lua-api.factorio.com/next/Concepts.html#TilePrototypeFilter View documentation}
3694
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#TilePrototypeFilter View documentation}
3677
3695
  */
3678
3696
  type TilePrototypeFilter =
3679
3697
  | CollisionMaskTilePrototypeFilter
@@ -3861,7 +3879,7 @@ interface HasProductsRecipePrototypeFilter extends BaseRecipePrototypeFilter {
3861
3879
  /**
3862
3880
  * Other attributes may be specified depending on `filter`:
3863
3881
  *
3864
- * {@link https://lua-api.factorio.com/next/Concepts.html#RecipePrototypeFilter View documentation}
3882
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#RecipePrototypeFilter View documentation}
3865
3883
  */
3866
3884
  type RecipePrototypeFilter =
3867
3885
  | HasIngredientItemRecipePrototypeFilter
@@ -4120,7 +4138,7 @@ interface ItemToPlaceEntityPrototypeFilter extends BaseEntityPrototypeFilter {
4120
4138
  /**
4121
4139
  * Other attributes may be specified depending on `filter`:
4122
4140
  *
4123
- * {@link https://lua-api.factorio.com/next/Concepts.html#EntityPrototypeFilter View documentation}
4141
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#EntityPrototypeFilter View documentation}
4124
4142
  */
4125
4143
  type EntityPrototypeFilter =
4126
4144
  | NameEntityPrototypeFilter
@@ -4259,7 +4277,7 @@ interface CircuitNetworkConnectableScriptRaisedReviveEventFilter extends BaseScr
4259
4277
  /**
4260
4278
  * Other attributes may be specified depending on `filter`:
4261
4279
  *
4262
- * {@link https://lua-api.factorio.com/next/Concepts.html#LuaScriptRaisedReviveEventFilter View documentation}
4280
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#LuaScriptRaisedReviveEventFilter View documentation}
4263
4281
  */
4264
4282
  type LuaScriptRaisedReviveEventFilter =
4265
4283
  | TypeScriptRaisedReviveEventFilter
@@ -4380,7 +4398,7 @@ interface CircuitNetworkConnectableEntityDiedEventFilter extends BaseEntityDiedE
4380
4398
  /**
4381
4399
  * Other attributes may be specified depending on `filter`:
4382
4400
  *
4383
- * {@link https://lua-api.factorio.com/next/Concepts.html#LuaEntityDiedEventFilter View documentation}
4401
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#LuaEntityDiedEventFilter View documentation}
4384
4402
  */
4385
4403
  type LuaEntityDiedEventFilter =
4386
4404
  | TypeEntityDiedEventFilter
@@ -4504,7 +4522,7 @@ interface CircuitNetworkConnectableEntityMarkedForDeconstructionEventFilter
4504
4522
  /**
4505
4523
  * Other attributes may be specified depending on `filter`:
4506
4524
  *
4507
- * {@link https://lua-api.factorio.com/next/Concepts.html#LuaEntityMarkedForDeconstructionEventFilter View documentation}
4525
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#LuaEntityMarkedForDeconstructionEventFilter View documentation}
4508
4526
  */
4509
4527
  type LuaEntityMarkedForDeconstructionEventFilter =
4510
4528
  | TypeEntityMarkedForDeconstructionEventFilter
@@ -4625,7 +4643,7 @@ interface CircuitNetworkConnectablePreGhostDeconstructedEventFilter extends Base
4625
4643
  /**
4626
4644
  * Other attributes may be specified depending on `filter`:
4627
4645
  *
4628
- * {@link https://lua-api.factorio.com/next/Concepts.html#LuaPreGhostDeconstructedEventFilter View documentation}
4646
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#LuaPreGhostDeconstructedEventFilter View documentation}
4629
4647
  */
4630
4648
  type LuaPreGhostDeconstructedEventFilter =
4631
4649
  | TypePreGhostDeconstructedEventFilter
@@ -4746,7 +4764,7 @@ interface CircuitNetworkConnectableScriptRaisedDestroyEventFilter extends BaseSc
4746
4764
  /**
4747
4765
  * Other attributes may be specified depending on `filter`:
4748
4766
  *
4749
- * {@link https://lua-api.factorio.com/next/Concepts.html#LuaScriptRaisedDestroyEventFilter View documentation}
4767
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#LuaScriptRaisedDestroyEventFilter View documentation}
4750
4768
  */
4751
4769
  type LuaScriptRaisedDestroyEventFilter =
4752
4770
  | TypeScriptRaisedDestroyEventFilter
@@ -4867,7 +4885,7 @@ interface CircuitNetworkConnectableUpgradeCancelledEventFilter extends BaseUpgra
4867
4885
  /**
4868
4886
  * Other attributes may be specified depending on `filter`:
4869
4887
  *
4870
- * {@link https://lua-api.factorio.com/next/Concepts.html#LuaUpgradeCancelledEventFilter View documentation}
4888
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#LuaUpgradeCancelledEventFilter View documentation}
4871
4889
  */
4872
4890
  type LuaUpgradeCancelledEventFilter =
4873
4891
  | TypeUpgradeCancelledEventFilter
@@ -4988,7 +5006,7 @@ interface CircuitNetworkConnectablePlayerRepairedEntityEventFilter extends BaseP
4988
5006
  /**
4989
5007
  * Other attributes may be specified depending on `filter`:
4990
5008
  *
4991
- * {@link https://lua-api.factorio.com/next/Concepts.html#LuaPlayerRepairedEntityEventFilter View documentation}
5009
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#LuaPlayerRepairedEntityEventFilter View documentation}
4992
5010
  */
4993
5011
  type LuaPlayerRepairedEntityEventFilter =
4994
5012
  | TypePlayerRepairedEntityEventFilter
@@ -5109,7 +5127,7 @@ interface CircuitNetworkConnectableEntityMarkedForUpgradeEventFilter extends Bas
5109
5127
  /**
5110
5128
  * Other attributes may be specified depending on `filter`:
5111
5129
  *
5112
- * {@link https://lua-api.factorio.com/next/Concepts.html#LuaEntityMarkedForUpgradeEventFilter View documentation}
5130
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#LuaEntityMarkedForUpgradeEventFilter View documentation}
5113
5131
  */
5114
5132
  type LuaEntityMarkedForUpgradeEventFilter =
5115
5133
  | TypeEntityMarkedForUpgradeEventFilter
@@ -5149,7 +5167,7 @@ interface TypePostEntityDiedEventFilter extends BasePostEntityDiedEventFilter {
5149
5167
  /**
5150
5168
  * Other attributes may be specified depending on `filter`:
5151
5169
  *
5152
- * {@link https://lua-api.factorio.com/next/Concepts.html#LuaPostEntityDiedEventFilter View documentation}
5170
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#LuaPostEntityDiedEventFilter View documentation}
5153
5171
  */
5154
5172
  type LuaPostEntityDiedEventFilter = TypePostEntityDiedEventFilter
5155
5173
 
@@ -5255,7 +5273,7 @@ interface CircuitNetworkConnectablePreRobotMinedEntityEventFilter extends BasePr
5255
5273
  /**
5256
5274
  * Other attributes may be specified depending on `filter`:
5257
5275
  *
5258
- * {@link https://lua-api.factorio.com/next/Concepts.html#LuaPreRobotMinedEntityEventFilter View documentation}
5276
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#LuaPreRobotMinedEntityEventFilter View documentation}
5259
5277
  */
5260
5278
  type LuaPreRobotMinedEntityEventFilter =
5261
5279
  | TypePreRobotMinedEntityEventFilter
@@ -5376,7 +5394,7 @@ interface CircuitNetworkConnectableEntityClonedEventFilter extends BaseEntityClo
5376
5394
  /**
5377
5395
  * Other attributes may be specified depending on `filter`:
5378
5396
  *
5379
- * {@link https://lua-api.factorio.com/next/Concepts.html#LuaEntityClonedEventFilter View documentation}
5397
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#LuaEntityClonedEventFilter View documentation}
5380
5398
  */
5381
5399
  type LuaEntityClonedEventFilter =
5382
5400
  | TypeEntityClonedEventFilter
@@ -5497,7 +5515,7 @@ interface CircuitNetworkConnectableScriptRaisedBuiltEventFilter extends BaseScri
5497
5515
  /**
5498
5516
  * Other attributes may be specified depending on `filter`:
5499
5517
  *
5500
- * {@link https://lua-api.factorio.com/next/Concepts.html#LuaScriptRaisedBuiltEventFilter View documentation}
5518
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#LuaScriptRaisedBuiltEventFilter View documentation}
5501
5519
  */
5502
5520
  type LuaScriptRaisedBuiltEventFilter =
5503
5521
  | TypeScriptRaisedBuiltEventFilter
@@ -5618,7 +5636,7 @@ interface CircuitNetworkConnectableRobotMinedEntityEventFilter extends BaseRobot
5618
5636
  /**
5619
5637
  * Other attributes may be specified depending on `filter`:
5620
5638
  *
5621
- * {@link https://lua-api.factorio.com/next/Concepts.html#LuaRobotMinedEntityEventFilter View documentation}
5639
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#LuaRobotMinedEntityEventFilter View documentation}
5622
5640
  */
5623
5641
  type LuaRobotMinedEntityEventFilter =
5624
5642
  | TypeRobotMinedEntityEventFilter
@@ -5739,7 +5757,7 @@ interface CircuitNetworkConnectablePrePlayerMinedEntityEventFilter extends BaseP
5739
5757
  /**
5740
5758
  * Other attributes may be specified depending on `filter`:
5741
5759
  *
5742
- * {@link https://lua-api.factorio.com/next/Concepts.html#LuaPrePlayerMinedEntityEventFilter View documentation}
5760
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#LuaPrePlayerMinedEntityEventFilter View documentation}
5743
5761
  */
5744
5762
  type LuaPrePlayerMinedEntityEventFilter =
5745
5763
  | TypePrePlayerMinedEntityEventFilter
@@ -5868,7 +5886,7 @@ interface CircuitNetworkConnectableRobotBuiltEntityEventFilter extends BaseRobot
5868
5886
  /**
5869
5887
  * Other attributes may be specified depending on `filter`:
5870
5888
  *
5871
- * {@link https://lua-api.factorio.com/next/Concepts.html#LuaRobotBuiltEntityEventFilter View documentation}
5889
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#LuaRobotBuiltEntityEventFilter View documentation}
5872
5890
  */
5873
5891
  type LuaRobotBuiltEntityEventFilter =
5874
5892
  | TypeRobotBuiltEntityEventFilter
@@ -5993,7 +6011,7 @@ interface CircuitNetworkConnectableEntityDeconstructionCancelledEventFilter
5993
6011
  /**
5994
6012
  * Other attributes may be specified depending on `filter`:
5995
6013
  *
5996
- * {@link https://lua-api.factorio.com/next/Concepts.html#LuaEntityDeconstructionCancelledEventFilter View documentation}
6014
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#LuaEntityDeconstructionCancelledEventFilter View documentation}
5997
6015
  */
5998
6016
  type LuaEntityDeconstructionCancelledEventFilter =
5999
6017
  | TypeEntityDeconstructionCancelledEventFilter
@@ -6122,7 +6140,7 @@ interface CircuitNetworkConnectablePlayerBuiltEntityEventFilter extends BasePlay
6122
6140
  /**
6123
6141
  * Other attributes may be specified depending on `filter`:
6124
6142
  *
6125
- * {@link https://lua-api.factorio.com/next/Concepts.html#LuaPlayerBuiltEntityEventFilter View documentation}
6143
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#LuaPlayerBuiltEntityEventFilter View documentation}
6126
6144
  */
6127
6145
  type LuaPlayerBuiltEntityEventFilter =
6128
6146
  | TypePlayerBuiltEntityEventFilter
@@ -6244,7 +6262,7 @@ interface CircuitNetworkConnectablePlayerMinedEntityEventFilter extends BasePlay
6244
6262
  /**
6245
6263
  * Other attributes may be specified depending on `filter`:
6246
6264
  *
6247
- * {@link https://lua-api.factorio.com/next/Concepts.html#LuaPlayerMinedEntityEventFilter View documentation}
6265
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#LuaPlayerMinedEntityEventFilter View documentation}
6248
6266
  */
6249
6267
  type LuaPlayerMinedEntityEventFilter =
6250
6268
  | TypePlayerMinedEntityEventFilter
@@ -6397,7 +6415,7 @@ interface CircuitNetworkConnectableEntityDamagedEventFilter extends BaseEntityDa
6397
6415
  /**
6398
6416
  * Other attributes may be specified depending on `filter`:
6399
6417
  *
6400
- * {@link https://lua-api.factorio.com/next/Concepts.html#LuaEntityDamagedEventFilter View documentation}
6418
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#LuaEntityDamagedEventFilter View documentation}
6401
6419
  */
6402
6420
  type LuaEntityDamagedEventFilter =
6403
6421
  | TypeEntityDamagedEventFilter
@@ -6522,7 +6540,7 @@ interface CircuitNetworkConnectableSectorScannedEventFilter extends BaseSectorSc
6522
6540
  /**
6523
6541
  * Other attributes may be specified depending on `filter`:
6524
6542
  *
6525
- * {@link https://lua-api.factorio.com/next/Concepts.html#LuaSectorScannedEventFilter View documentation}
6543
+ * {@link https://lua-api.factorio.com/latest/Concepts.html#LuaSectorScannedEventFilter View documentation}
6526
6544
  */
6527
6545
  type LuaSectorScannedEventFilter =
6528
6546
  | TypeSectorScannedEventFilter
@@ -6541,6 +6559,12 @@ type LuaSectorScannedEventFilter =
6541
6559
  | TransportBeltConnectableSectorScannedEventFilter
6542
6560
  | CircuitNetworkConnectableSectorScannedEventFilter
6543
6561
 
6562
+ type StyleValuesArray =
6563
+ | readonly [topBottom: number, leftRight: number]
6564
+ | readonly [top: number, right: number, bottom: number, left: number]
6565
+
6566
+ type SizeArray = readonly [width: int, height: int]
6567
+
6544
6568
  /**
6545
6569
  * A map gen preset. Used in {@link https://wiki.factorio.com/Prototype/MapGenPresets Prototype/MapGenPresets}.
6546
6570
  *