typed-factorio 3.19.2 → 3.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -18,7 +18,7 @@ declare module "factorio:runtime" {
18
18
  * - {@link FluidID}: Used with fluid production statistics.
19
19
  * - {@link EntityWithQualityID}: Used with electric network, entity build count, and kill count statistics.
20
20
  * - {@link EntityID}: Used with pollution statistics.
21
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/FlowStatisticsID.html Online documentation}
21
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/FlowStatisticsID.html Online documentation}
22
22
  */
23
23
  export type FlowStatisticsID = ItemWithQualityID | FluidID | EntityWithQualityID | EntityID
24
24
  export type ItemStackIndex = uint16
@@ -40,7 +40,7 @@ declare module "factorio:runtime" {
40
40
  * - `"<="`: "lesser than or equal to"
41
41
  * - `"≠"`: "not equal to"
42
42
  * - `"!="`: "not equal to"
43
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ComparatorString.html Online documentation}
43
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ComparatorString.html Online documentation}
44
44
  */
45
45
  export type ComparatorString = "=" | ">" | "<" | "≥" | ">=" | "≤" | "<=" | "≠" | "!="
46
46
  export type ComparatorStringRead = "=" | ">" | "<" | "≥" | "≤" | "≠"
@@ -71,15 +71,15 @@ declare module "factorio:runtime" {
71
71
  *
72
72
  * The validity of a SpritePath can be verified at runtime using {@link LuaHelpers#is_valid_sprite_path LuaHelpers::is_valid_sprite_path}.
73
73
  *
74
- * {@link https://lua-api.factorio.com/2.0.44/concepts/SpritePath.html > The supported types are:}
75
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/SpritePath.html Online documentation}
74
+ * {@link https://lua-api.factorio.com/2.0.47/concepts/SpritePath.html > The supported types are:}
75
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/SpritePath.html Online documentation}
76
76
  */
77
77
  export type SpritePath = (string & { _?: never }) | `${SpriteType}${"/" | "."}${string}`
78
78
  /**
79
79
  * @example
80
80
  * -- Most common collision mask of buildings:
81
81
  * collision_mask = {layers = {item = true, meltable = true, object = true, player = true, water_tile = true, is_object = true, is_lower_object = true}}
82
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/CollisionMask.html Online documentation}
82
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/CollisionMask.html Online documentation}
83
83
  */
84
84
  export interface CollisionMask {
85
85
  /**
@@ -103,14 +103,14 @@ declare module "factorio:runtime" {
103
103
  * The percentual increase of the attribute. A value of `0.6` means a 60% increase.
104
104
  *
105
105
  * Quality values are divided by 10 internally, allowing for one more decimal of precision.
106
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ModuleEffectValue.html Online documentation}
106
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ModuleEffectValue.html Online documentation}
107
107
  */
108
108
  export type ModuleEffectValue = float
109
109
  /**
110
110
  * @example
111
111
  * -- These are the effects of the vanilla Speed Module 3
112
112
  * {speed = 0.5, consumption = 0.7, quality = -0.25}
113
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ModuleEffects.html Online documentation}
113
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ModuleEffects.html Online documentation}
114
114
  */
115
115
  export interface ModuleEffects {
116
116
  readonly consumption?: ModuleEffectValue
@@ -121,7 +121,7 @@ declare module "factorio:runtime" {
121
121
  }
122
122
  /**
123
123
  * `math.huge` represents the maximum possible tick.
124
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/MapTick.html Online documentation}
124
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/MapTick.html Online documentation}
125
125
  */
126
126
  export type MapTick = uint64
127
127
  /**
@@ -200,7 +200,7 @@ declare module "factorio:runtime" {
200
200
  * - `"collision-selection-box"`: 189
201
201
  * - `"arrow"`: 190
202
202
  * - `"cursor"`: 226
203
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/RenderLayer.html Online documentation}
203
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/RenderLayer.html Online documentation}
204
204
  */
205
205
  export type RenderLayer =
206
206
  | `${bigint}`
@@ -277,7 +277,7 @@ declare module "factorio:runtime" {
277
277
  | "cursor"
278
278
  /**
279
279
  * What is shown in the map view. If a field is not given, that setting will not be changed.
280
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/MapViewSettings.html Online documentation}
280
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/MapViewSettings.html Online documentation}
281
281
  */
282
282
  export interface MapViewSettings {
283
283
  readonly "show-logistic-network"?: boolean
@@ -307,7 +307,7 @@ declare module "factorio:runtime" {
307
307
  * - `"blueprint-snap-rectangle"`: Green by default.
308
308
  * - `"spidertron-remote-selected"`
309
309
  * - `"spidertron-remote-to-be-selected"`
310
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/CursorBoxRenderType.html Online documentation}
310
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/CursorBoxRenderType.html Online documentation}
311
311
  */
312
312
  export type CursorBoxRenderType =
313
313
  | "entity"
@@ -325,7 +325,7 @@ declare module "factorio:runtime" {
325
325
  * The name of a {@link LuaCollisionLayerPrototype}.
326
326
  * @example
327
327
  * "is_lower_object"
328
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/CollisionLayerID.html Online documentation}
328
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/CollisionLayerID.html Online documentation}
329
329
  */
330
330
  export type CollisionLayerID = string
331
331
  /**
@@ -335,7 +335,7 @@ declare module "factorio:runtime" {
335
335
  * - `"left"`
336
336
  * - `"right"`
337
337
  * - `"none"`
338
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/SwitchState.html Online documentation}
338
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/SwitchState.html Online documentation}
339
339
  */
340
340
  export type SwitchState = "left" | "right" | "none"
341
341
  export interface PrototypeWithQuality {
@@ -373,7 +373,7 @@ declare module "factorio:runtime" {
373
373
  * - `"entity-with-quality"`
374
374
  * - `"recipe-with-quality"`
375
375
  * - `"equipment-with-quality"`
376
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ElemType.html Online documentation}
376
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ElemType.html Online documentation}
377
377
  */
378
378
  export type ElemType =
379
379
  | "achievement"
@@ -407,7 +407,7 @@ declare module "factorio:runtime" {
407
407
  /**
408
408
  * An item filter may be specified in two ways, either as a string which is an item prototype name or as a table.
409
409
  * @see ItemFilterWrite
410
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ItemFilter.html Online documentation}
410
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ItemFilter.html Online documentation}
411
411
  */
412
412
  export type ItemFilter =
413
413
  | {
@@ -427,7 +427,7 @@ declare module "factorio:runtime" {
427
427
  | string
428
428
  /**
429
429
  * Write form of {@link ItemFilter}, where some properties allow additional values as input compared to the read form.
430
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ItemFilter.html Online documentation}
430
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ItemFilter.html Online documentation}
431
431
  */
432
432
  export type ItemFilterWrite =
433
433
  | {
@@ -510,7 +510,7 @@ declare module "factorio:runtime" {
510
510
  * - `"position"`: {@link PositionGuiArrowSpecification}
511
511
  * - `"crafting_queue"`: {@link CraftingQueueGuiArrowSpecification}
512
512
  * - `"item_stack"`: {@link ItemStackGuiArrowSpecification}
513
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/GuiArrowSpecification.html Online documentation}
513
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/GuiArrowSpecification.html Online documentation}
514
514
  */
515
515
  export type GuiArrowSpecification =
516
516
  | EntityGuiArrowSpecification
@@ -523,7 +523,7 @@ declare module "factorio:runtime" {
523
523
  *
524
524
  * If this is specified as a three-element array then the array items are x, y and z, in that order.
525
525
  * @see Vector3DArray
526
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/Vector3D.html Online documentation}
526
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/Vector3D.html Online documentation}
527
527
  */
528
528
  export interface Vector3D {
529
529
  readonly x: float
@@ -533,7 +533,7 @@ declare module "factorio:runtime" {
533
533
  /**
534
534
  * Array form of {@link Vector3D}.
535
535
  * @see Vector3D
536
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/Vector3D.html Online documentation}
536
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/Vector3D.html Online documentation}
537
537
  */
538
538
  export type Vector3DArray = readonly [float, float, float]
539
539
  export interface ItemWithQualityCounts {
@@ -566,7 +566,7 @@ declare module "factorio:runtime" {
566
566
  }
567
567
  /**
568
568
  * @see TrainScheduleWrite
569
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/TrainSchedule.html Online documentation}
569
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/TrainSchedule.html Online documentation}
570
570
  */
571
571
  export interface TrainSchedule {
572
572
  /**
@@ -577,7 +577,7 @@ declare module "factorio:runtime" {
577
577
  }
578
578
  /**
579
579
  * Write form of {@link TrainSchedule}, where some properties allow additional values as input compared to the read form.
580
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/TrainSchedule.html Online documentation}
580
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/TrainSchedule.html Online documentation}
581
581
  */
582
582
  export interface TrainScheduleWrite {
583
583
  /**
@@ -588,7 +588,7 @@ declare module "factorio:runtime" {
588
588
  }
589
589
  /**
590
590
  * @see PlatformScheduleWrite
591
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/PlatformSchedule.html Online documentation}
591
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/PlatformSchedule.html Online documentation}
592
592
  */
593
593
  export interface PlatformSchedule {
594
594
  /**
@@ -599,7 +599,7 @@ declare module "factorio:runtime" {
599
599
  }
600
600
  /**
601
601
  * Write form of {@link PlatformSchedule}, where some properties allow additional values as input compared to the read form.
602
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/PlatformSchedule.html Online documentation}
602
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/PlatformSchedule.html Online documentation}
603
603
  */
604
604
  export interface PlatformScheduleWrite {
605
605
  /**
@@ -616,7 +616,7 @@ declare module "factorio:runtime" {
616
616
  }
617
617
  /**
618
618
  * A recipe prototype with optional quality specification.
619
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/RecipeIDAndQualityIDPair.html Online documentation}
619
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/RecipeIDAndQualityIDPair.html Online documentation}
620
620
  */
621
621
  export interface RecipeIDAndQualityIDPair {
622
622
  /**
@@ -665,7 +665,7 @@ declare module "factorio:runtime" {
665
665
  * - `string`: Name of the force, same as {@link LuaForce#name LuaForce::name}.
666
666
  * - {@link uint8}: Index of the force, same as {@link LuaForce#index LuaForce::index}.
667
667
  * - {@link LuaForce}: A reference to {@link LuaForce} may be passed directly.
668
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ForceID.html Online documentation}
668
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ForceID.html Online documentation}
669
669
  */
670
670
  export type ForceID = string | uint8 | LuaForce
671
671
  /**
@@ -675,7 +675,7 @@ declare module "factorio:runtime" {
675
675
  * - `string`: The fluid name.
676
676
  * - {@link LuaFluidPrototype}: The fluid prototype.
677
677
  * - {@link Fluid}: The fluid.
678
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/FluidID.html Online documentation}
678
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/FluidID.html Online documentation}
679
679
  */
680
680
  export type FluidID = string | LuaFluidPrototype | Fluid
681
681
  /**
@@ -686,12 +686,12 @@ declare module "factorio:runtime" {
686
686
  * - {@link LuaEntityPrototype}: The entity prototype. Normal quality will be used.
687
687
  * - `string`: The prototype name. Normal quality will be used.
688
688
  * - {@link EntityIDAndQualityIDPair}: A table of entity prototype and quality.
689
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/EntityWithQualityID.html Online documentation}
689
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/EntityWithQualityID.html Online documentation}
690
690
  */
691
691
  export type EntityWithQualityID = LuaEntity | LuaEntityPrototype | string | EntityIDAndQualityIDPair
692
692
  /**
693
693
  * An entity prototype with optional quality specification.
694
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/EntityIDAndQualityIDPair.html Online documentation}
694
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/EntityIDAndQualityIDPair.html Online documentation}
695
695
  */
696
696
  export interface EntityIDAndQualityIDPair {
697
697
  /**
@@ -711,13 +711,13 @@ declare module "factorio:runtime" {
711
711
  * - {@link LuaItemPrototype}: The item prototype. Normal quality will be used.
712
712
  * - `string`: The prototype name. Normal quality will be used.
713
713
  * - {@link ItemIDAndQualityIDPair}: A table of entity prototype and quality.
714
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ItemWithQualityID.html Online documentation}
714
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ItemWithQualityID.html Online documentation}
715
715
  */
716
716
  export type ItemWithQualityID = LuaItemStack | LuaItemPrototype | string | ItemIDAndQualityIDPairWrite
717
717
  /**
718
718
  * An item prototype with optional quality specification.
719
719
  * @see ItemIDAndQualityIDPairWrite
720
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ItemIDAndQualityIDPair.html Online documentation}
720
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ItemIDAndQualityIDPair.html Online documentation}
721
721
  */
722
722
  export interface ItemIDAndQualityIDPair {
723
723
  /**
@@ -731,7 +731,7 @@ declare module "factorio:runtime" {
731
731
  }
732
732
  /**
733
733
  * Write form of {@link ItemIDAndQualityIDPair}, where some properties allow additional values as input compared to the read form.
734
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ItemIDAndQualityIDPair.html Online documentation}
734
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ItemIDAndQualityIDPair.html Online documentation}
735
735
  */
736
736
  export interface ItemIDAndQualityIDPairWrite {
737
737
  /**
@@ -751,7 +751,7 @@ declare module "factorio:runtime" {
751
751
  * - {@link LuaItemStack}: Non empty item stack.
752
752
  * - {@link LuaItem}: The item.
753
753
  * - `string`: The prototype name.
754
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ItemID.html Online documentation}
754
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ItemID.html Online documentation}
755
755
  */
756
756
  export type ItemID = LuaItemPrototype | LuaItemStack | LuaItem | string
757
757
  /**
@@ -761,7 +761,7 @@ declare module "factorio:runtime" {
761
761
  * - {@link LuaEntityPrototype}: The entity prototype.
762
762
  * - {@link LuaEntity}: The entity.
763
763
  * - `string`: The prototype name.
764
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/EntityID.html Online documentation}
764
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/EntityID.html Online documentation}
765
765
  */
766
766
  export type EntityID = LuaEntityPrototype | LuaEntity | string
767
767
  /**
@@ -771,7 +771,7 @@ declare module "factorio:runtime" {
771
771
  * - {@link LuaTechnologyPrototype}: The technology prototype.
772
772
  * - {@link LuaTechnology}: Instance of the technology.
773
773
  * - `string`: The prototype name.
774
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/TechnologyID.html Online documentation}
774
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/TechnologyID.html Online documentation}
775
775
  */
776
776
  export type TechnologyID = LuaTechnologyPrototype | LuaTechnology | string
777
777
  /**
@@ -780,7 +780,7 @@ declare module "factorio:runtime" {
780
780
  * ## Union members
781
781
  * - {@link LuaParticlePrototype}: The particle prototype.
782
782
  * - `string`: The prototype name.
783
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ParticleID.html Online documentation}
783
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ParticleID.html Online documentation}
784
784
  */
785
785
  export type ParticleID = LuaParticlePrototype | string
786
786
  /**
@@ -789,7 +789,7 @@ declare module "factorio:runtime" {
789
789
  * ## Union members
790
790
  * - {@link LuaDamagePrototype}: The damage type prototype.
791
791
  * - `string`: The prototype name.
792
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/DamageTypeID.html Online documentation}
792
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/DamageTypeID.html Online documentation}
793
793
  */
794
794
  export type DamageTypeID = LuaDamagePrototype | string
795
795
  /**
@@ -798,7 +798,7 @@ declare module "factorio:runtime" {
798
798
  * ## Union members
799
799
  * - {@link LuaTrivialSmokePrototype}: The trivial smoke prototype.
800
800
  * - `string`: The prototype name.
801
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/TrivialSmokeID.html Online documentation}
801
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/TrivialSmokeID.html Online documentation}
802
802
  */
803
803
  export type TrivialSmokeID = LuaTrivialSmokePrototype | string
804
804
  /**
@@ -810,7 +810,7 @@ declare module "factorio:runtime" {
810
810
  * - `"left"`
811
811
  * - `"right"`
812
812
  * - `"center"`
813
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/TextAlign.html Online documentation}
813
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/TextAlign.html Online documentation}
814
814
  */
815
815
  export type TextAlign = "left" | "right" | "center"
816
816
  /**
@@ -823,7 +823,7 @@ declare module "factorio:runtime" {
823
823
  * - `"middle"`
824
824
  * - `"baseline"`
825
825
  * - `"bottom"`
826
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/VerticalTextAlign.html Online documentation}
826
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/VerticalTextAlign.html Online documentation}
827
827
  */
828
828
  export type VerticalTextAlign = "top" | "middle" | "baseline" | "bottom"
829
829
  /**
@@ -832,7 +832,7 @@ declare module "factorio:runtime" {
832
832
  * ## Union members
833
833
  * - {@link LuaQualityPrototype}: The quality prototype.
834
834
  * - `string`: The prototype name.
835
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/QualityID.html Online documentation}
835
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/QualityID.html Online documentation}
836
836
  */
837
837
  export type QualityID = LuaQualityPrototype | string
838
838
  /**
@@ -842,7 +842,7 @@ declare module "factorio:runtime" {
842
842
  * - {@link LuaRecipePrototype}: By recipe prototype.
843
843
  * - {@link LuaRecipe}: By instance of recipe.
844
844
  * - `string`: By name of the recipe prototype.
845
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/RecipeID.html Online documentation}
845
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/RecipeID.html Online documentation}
846
846
  */
847
847
  export type RecipeID = LuaRecipePrototype | LuaRecipe | string
848
848
  /**
@@ -852,7 +852,7 @@ declare module "factorio:runtime" {
852
852
  * - {@link LuaTilePrototype}: By tile prototype.
853
853
  * - {@link LuaTile}: By instance of tile.
854
854
  * - `string`: By name of the tile prototype.
855
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/TileID.html Online documentation}
855
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/TileID.html Online documentation}
856
856
  */
857
857
  export type TileID = LuaTilePrototype | LuaTile | string
858
858
  export interface Fluid {
@@ -876,7 +876,7 @@ declare module "factorio:runtime" {
876
876
  * - {@link LuaEquipmentPrototype}: The equipment prototype.
877
877
  * - {@link LuaEquipment}: The equipment.
878
878
  * - `string`: The prototype name.
879
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/EquipmentID.html Online documentation}
879
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/EquipmentID.html Online documentation}
880
880
  */
881
881
  export type EquipmentID = LuaEquipmentPrototype | LuaEquipment | string
882
882
  /**
@@ -887,12 +887,12 @@ declare module "factorio:runtime" {
887
887
  * - {@link LuaEquipment}: The equipment. Both prototype and quality of the provided equipment will be used.
888
888
  * - `string`: The prototype name. Normal quality will be used.
889
889
  * - {@link EquipmentIDAndQualityIDPair}: A table of equipment prototype and quality.
890
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/EquipmentWithQualityID.html Online documentation}
890
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/EquipmentWithQualityID.html Online documentation}
891
891
  */
892
892
  export type EquipmentWithQualityID = LuaEquipmentPrototype | LuaEquipment | string | EquipmentIDAndQualityIDPair
893
893
  /**
894
894
  * An equipment prototype with optional quality specification.
895
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/EquipmentIDAndQualityIDPair.html Online documentation}
895
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/EquipmentIDAndQualityIDPair.html Online documentation}
896
896
  */
897
897
  export interface EquipmentIDAndQualityIDPair {
898
898
  /**
@@ -913,7 +913,7 @@ declare module "factorio:runtime" {
913
913
  * @example
914
914
  * -- Shorthand
915
915
  * {{-2, -3}, {5, 8}}
916
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/BoundingBox.html Online documentation}
916
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/BoundingBox.html Online documentation}
917
917
  */
918
918
  export interface BoundingBox {
919
919
  readonly left_top: MapPosition
@@ -923,7 +923,7 @@ declare module "factorio:runtime" {
923
923
  /**
924
924
  * Array form of {@link BoundingBox}.
925
925
  * @see BoundingBox
926
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/BoundingBox.html Online documentation}
926
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/BoundingBox.html Online documentation}
927
927
  */
928
928
  export type BoundingBoxArray = readonly [MapPosition | MapPositionArray, MapPosition | MapPositionArray]
929
929
  export interface BoundingBoxWrite {
@@ -936,7 +936,7 @@ declare module "factorio:runtime" {
936
936
  *
937
937
  * ## Union members
938
938
  * - {@link LuaSpacePlatform}
939
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/SpacePlatformIdentification.html Online documentation}
939
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/SpacePlatformIdentification.html Online documentation}
940
940
  */
941
941
  export type SpacePlatformIdentification = LuaSpacePlatform
942
942
  /**
@@ -946,12 +946,12 @@ declare module "factorio:runtime" {
946
946
  * - {@link LuaForce}[]: Array of many forces.
947
947
  * - {@link LuaForce}: A single force.
948
948
  * @see ForceSetWrite
949
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ForceSet.html Online documentation}
949
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ForceSet.html Online documentation}
950
950
  */
951
951
  export type ForceSet = LuaForce[] | LuaForce
952
952
  /**
953
953
  * Write form of {@link ForceSet}, where some properties allow additional values as input compared to the read form.
954
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ForceSet.html Online documentation}
954
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ForceSet.html Online documentation}
955
955
  */
956
956
  export type ForceSetWrite = readonly ForceID[] | ForceID
957
957
  /**
@@ -960,7 +960,7 @@ declare module "factorio:runtime" {
960
960
  * ## Union members
961
961
  * - {@link LuaDecorativePrototype}: The decorative prototype.
962
962
  * - `string`: The prototype name.
963
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/DecorativeID.html Online documentation}
963
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/DecorativeID.html Online documentation}
964
964
  */
965
965
  export type DecorativeID = LuaDecorativePrototype | string
966
966
  /**
@@ -969,7 +969,7 @@ declare module "factorio:runtime" {
969
969
  * ## Union members
970
970
  * - {@link LuaAsteroidChunkPrototype}: The asteroid chunk prototype.
971
971
  * - `string`: The prototype name.
972
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/AsteroidChunkID.html Online documentation}
972
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/AsteroidChunkID.html Online documentation}
973
973
  */
974
974
  export type AsteroidChunkID = LuaAsteroidChunkPrototype | string
975
975
  /**
@@ -978,13 +978,13 @@ declare module "factorio:runtime" {
978
978
  * ## Union members
979
979
  * - {@link LuaSpaceLocationPrototype}: The space location prototype.
980
980
  * - `string`: The prototype name.
981
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/SpaceLocationID.html Online documentation}
981
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/SpaceLocationID.html Online documentation}
982
982
  */
983
983
  export type SpaceLocationID = LuaSpaceLocationPrototype | string
984
984
  /**
985
985
  * A signal filter may be specified in two ways, either as a string which is a virtual signal name or item prototype name or as a table.
986
986
  * @see SignalFilterWrite
987
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/SignalFilter.html Online documentation}
987
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/SignalFilter.html Online documentation}
988
988
  */
989
989
  export type SignalFilter =
990
990
  | {
@@ -1008,7 +1008,7 @@ declare module "factorio:runtime" {
1008
1008
  | string
1009
1009
  /**
1010
1010
  * Write form of {@link SignalFilter}, where some properties allow additional values as input compared to the read form.
1011
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/SignalFilter.html Online documentation}
1011
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/SignalFilter.html Online documentation}
1012
1012
  */
1013
1013
  export type SignalFilterWrite =
1014
1014
  | {
@@ -1032,7 +1032,7 @@ declare module "factorio:runtime" {
1032
1032
  | string
1033
1033
  /**
1034
1034
  * @see LogisticFilterWrite
1035
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LogisticFilter.html Online documentation}
1035
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LogisticFilter.html Online documentation}
1036
1036
  */
1037
1037
  export interface LogisticFilter {
1038
1038
  /**
@@ -1058,7 +1058,7 @@ declare module "factorio:runtime" {
1058
1058
  }
1059
1059
  /**
1060
1060
  * Write form of {@link LogisticFilter}, where some properties allow additional values as input compared to the read form.
1061
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LogisticFilter.html Online documentation}
1061
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LogisticFilter.html Online documentation}
1062
1062
  */
1063
1063
  export interface LogisticFilterWrite {
1064
1064
  /**
@@ -1114,23 +1114,23 @@ declare module "factorio:runtime" {
1114
1114
  * ## Union members
1115
1115
  * - {@link LuaSurfacePropertyPrototype}: The surface property prototype.
1116
1116
  * - `string`: The prototype name.
1117
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/SurfacePropertyID.html Online documentation}
1117
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/SurfacePropertyID.html Online documentation}
1118
1118
  */
1119
1119
  export type SurfacePropertyID = LuaSurfacePropertyPrototype | string
1120
1120
  /**
1121
1121
  * When writing it is possible to give LuaEntity or MapPosition directly. However, reading always returns the full ScriptRenderTargetTable.
1122
1122
  * @see ScriptRenderTargetWrite
1123
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ScriptRenderTarget.html Online documentation}
1123
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ScriptRenderTarget.html Online documentation}
1124
1124
  */
1125
1125
  export type ScriptRenderTarget = LuaEntity | MapPosition | ScriptRenderTargetTable
1126
1126
  /**
1127
1127
  * Write form of {@link ScriptRenderTarget}, where some properties allow additional values as input compared to the read form.
1128
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ScriptRenderTarget.html Online documentation}
1128
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ScriptRenderTarget.html Online documentation}
1129
1129
  */
1130
1130
  export type ScriptRenderTargetWrite = LuaEntity | (MapPosition | MapPositionArray) | ScriptRenderTargetTableWrite
1131
1131
  /**
1132
1132
  * @see ScriptRenderTargetTableWrite
1133
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ScriptRenderTargetTable.html Online documentation}
1133
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ScriptRenderTargetTable.html Online documentation}
1134
1134
  */
1135
1135
  export interface ScriptRenderTargetTable {
1136
1136
  readonly entity?: LuaEntity
@@ -1145,7 +1145,7 @@ declare module "factorio:runtime" {
1145
1145
  }
1146
1146
  /**
1147
1147
  * Write form of {@link ScriptRenderTargetTable}, where some properties allow additional values as input compared to the read form.
1148
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ScriptRenderTargetTable.html Online documentation}
1148
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ScriptRenderTargetTable.html Online documentation}
1149
1149
  */
1150
1150
  export interface ScriptRenderTargetTableWrite {
1151
1151
  readonly entity?: LuaEntity
@@ -1160,7 +1160,7 @@ declare module "factorio:runtime" {
1160
1160
  }
1161
1161
  /**
1162
1162
  * An item filter may be specified in two ways, either as a string which is a quality prototype name or as a table.
1163
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/QualityCondition.html Online documentation}
1163
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/QualityCondition.html Online documentation}
1164
1164
  */
1165
1165
  export type QualityCondition =
1166
1166
  | {
@@ -1177,7 +1177,7 @@ declare module "factorio:runtime" {
1177
1177
  /**
1178
1178
  * The destination of a cargo pod.
1179
1179
  * @see CargoDestinationWrite
1180
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/CargoDestination.html Online documentation}
1180
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/CargoDestination.html Online documentation}
1181
1181
  */
1182
1182
  export interface CargoDestination {
1183
1183
  /**
@@ -1215,7 +1215,7 @@ declare module "factorio:runtime" {
1215
1215
  }
1216
1216
  /**
1217
1217
  * Write form of {@link CargoDestination}, where some properties allow additional values as input compared to the read form.
1218
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/CargoDestination.html Online documentation}
1218
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/CargoDestination.html Online documentation}
1219
1219
  */
1220
1220
  export interface CargoDestinationWrite {
1221
1221
  /**
@@ -1261,6 +1261,60 @@ declare module "factorio:runtime" {
1261
1261
  */
1262
1262
  readonly interrupt_index?: uint
1263
1263
  }
1264
+ /**
1265
+ * A set of limitations for the player zoom level.
1266
+ * @example
1267
+ * {
1268
+ * closest = { zoom = 4 },
1269
+ * furthest = { zoom = 1 / 16 },
1270
+ * furthest_game_view = { distance = 200, max_distance = 400 }
1271
+ * }
1272
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ZoomLimits.html Online documentation}
1273
+ */
1274
+ export interface ZoomLimits {
1275
+ /**
1276
+ * The closest zoom level that the player's current controller can have. If not defined when overwriting {@link LuaPlayer#zoom_limits LuaPlayer::zoom_limits}, then the default value for the current controller as defined by the engine will be used instead. When reading from {@link LuaPlayer#zoom_limits LuaPlayer::zoom_limits}, this field will contain the value previously set by a script or the default value defined by the engine.
1277
+ */
1278
+ readonly closest?: ZoomSpecification
1279
+ /**
1280
+ * The furthest zoom level that the player's current controller can have. If for any reason the `furthest` limit is closer than `closest`, then the player's zoom will be locked to the closer of the two values. If not defined when overwriting {@link LuaPlayer#zoom_limits LuaPlayer::zoom_limits}, then the default value for the current controller as defined by the engine will be used instead. When reading from {@link LuaPlayer#zoom_limits LuaPlayer::zoom_limits}, this field will contain the value previously set by a script or the default value defined by the engine.
1281
+ */
1282
+ readonly furthest?: ZoomSpecification
1283
+ /**
1284
+ * The furthest zoom level at which the engine will render the game view. Zoom levels further than this limit will render using chart (map) view. Set this to the same value as `furthest` to force the game view at all zoom levels. Set this to some value closer than `closest` to force chart view at all zoom levels. If not defined when overwriting {@link LuaPlayer#zoom_limits LuaPlayer::zoom_limits}, then the default value for the current controller as defined by the engine will be used instead. When reading from {@link LuaPlayer#zoom_limits LuaPlayer::zoom_limits}, this field will contain the value previously set by a script or the default value defined by the engine.
1285
+ */
1286
+ readonly furthest_game_view?: ZoomSpecification
1287
+ }
1288
+ /**
1289
+ * A table specifying a fixed or dynamically-computed zoom level using one of the supported methods. Used by {@link ZoomLimits}.
1290
+ *
1291
+ * Method 1 only uses the `zoom` field. The zoom level is fixed and will not change at runtime. Directly correlates to the perceived size of objects in the game world.
1292
+ *
1293
+ * Method 2 only uses `distance` and optionally `max_distance`. The zoom level is computed dynamically based on the player's window dimensions and aspect ratio. This method is ideal for limiting how far the player can see.
1294
+ *
1295
+ * If there is ambiguity in which method should be used (i.e. both `zoom` and `distance` fields are provided), an error will be thrown during parsing.
1296
+ * @example
1297
+ * -- Method 1: Specify a fixed zoom level.
1298
+ * { zoom = 3.0 }
1299
+ *
1300
+ * -- Method 2: Specify a dynamic zoom level based on the window dimensions.
1301
+ * { distance = 200, max_distance = 500 }
1302
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ZoomSpecification.html Online documentation}
1303
+ */
1304
+ export interface ZoomSpecification {
1305
+ /**
1306
+ * A fixed zoom level. Must be a positive value. 1.0 is the default zoom level. Mutually exclusive with `distance`.
1307
+ */
1308
+ readonly zoom?: double
1309
+ /**
1310
+ * The number of game tiles across the horizontal axis at the game's default 16:9 aspect ratio. Must be a positive number. This specification is designed to comfortably accommodate displays with extreme aspect ratios such as ultrawide monitors. The exact zoom level is calculated at dynamically as follows. For aspect ratios between 16:9 and 9:16, the zoom level is computed so that `distance` number of tiles are visible along the game window's longer axis. For aspect ratios between 16:9 and 1:1, this is the window's width. For aspect ratios between 1:1 and 9:16, this is the window's height. For aspect ratios greater than 16:9 or smaller than 9:16, then the zoom level is actually computed so that `distance * 9 / 16` number of tiles are visible along the game window's shorter axis. So for aspect ratios greater than 16:9, this is the window's height. For aspect ratios smaller than 9:16, this is the window's height. Mutually exclusive with `zoom`. Used with `max_distance`.
1311
+ */
1312
+ readonly distance?: double
1313
+ /**
1314
+ * The absolute maximum number of game tiles permitted along the window's longest axis, setting a hard limit on how far a player can see by simply manipulating the game window. Must be a positive number. Values greater than the default may allow players to see ungenerated chunks while exploring. The "closest" zoom level calculated from `distance` and `max_distance` is always used. Optionally used with `distance`. Defaults to `500`.
1315
+ */
1316
+ readonly max_distance?: double
1317
+ }
1264
1318
  /**
1265
1319
  * Event name may be specified in one of four ways.
1266
1320
  *
@@ -1269,7 +1323,7 @@ declare module "factorio:runtime" {
1269
1323
  * - {@link LuaCustomInputPrototype}: Custom input prototype.
1270
1324
  * - {@link defines.events}: Event identifier.
1271
1325
  * - `string`: Name of the event.
1272
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaEventType.html Online documentation}
1326
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaEventType.html Online documentation}
1273
1327
  */
1274
1328
  export type LuaEventType = LuaCustomEventPrototype | LuaCustomInputPrototype | defines.events | string | EventId<any>
1275
1329
  /**
@@ -1277,13 +1331,13 @@ declare module "factorio:runtime" {
1277
1331
  * - `"center-to-center"`
1278
1332
  * - `"bounding-box-to-bounding-box"`
1279
1333
  * - `"center-to-bounding-box"`
1280
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/RangeMode.html Online documentation}
1334
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/RangeMode.html Online documentation}
1281
1335
  */
1282
1336
  export type RangeMode = "center-to-center" | "bounding-box-to-bounding-box" | "center-to-bounding-box"
1283
1337
  /**
1284
1338
  * The representation of an entity inside of a blueprint. It has at least these fields, but can contain additional ones depending on the kind of entity.
1285
1339
  * @see BlueprintEntityWrite
1286
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/BlueprintEntity.html Online documentation}
1340
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/BlueprintEntity.html Online documentation}
1287
1341
  */
1288
1342
  export interface BlueprintEntity {
1289
1343
  /**
@@ -1497,7 +1551,7 @@ declare module "factorio:runtime" {
1497
1551
  }
1498
1552
  /**
1499
1553
  * Write form of {@link BlueprintEntity}, where some properties allow additional values as input compared to the read form.
1500
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/BlueprintEntity.html Online documentation}
1554
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/BlueprintEntity.html Online documentation}
1501
1555
  */
1502
1556
  export interface BlueprintEntityWrite {
1503
1557
  /**
@@ -1718,7 +1772,7 @@ declare module "factorio:runtime" {
1718
1772
  }
1719
1773
  /**
1720
1774
  * @see BlueprintEquipmentWrite
1721
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/BlueprintEquipment.html Online documentation}
1775
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/BlueprintEquipment.html Online documentation}
1722
1776
  */
1723
1777
  export interface BlueprintEquipment {
1724
1778
  readonly equipment: ItemIDAndQualityIDPair
@@ -1726,7 +1780,7 @@ declare module "factorio:runtime" {
1726
1780
  }
1727
1781
  /**
1728
1782
  * Write form of {@link BlueprintEquipment}, where some properties allow additional values as input compared to the read form.
1729
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/BlueprintEquipment.html Online documentation}
1783
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/BlueprintEquipment.html Online documentation}
1730
1784
  */
1731
1785
  export interface BlueprintEquipmentWrite {
1732
1786
  readonly equipment: ItemIDAndQualityIDPairWrite
@@ -1734,7 +1788,7 @@ declare module "factorio:runtime" {
1734
1788
  }
1735
1789
  /**
1736
1790
  * @see BlueprintInventoryWrite
1737
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/BlueprintInventory.html Online documentation}
1791
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/BlueprintInventory.html Online documentation}
1738
1792
  */
1739
1793
  export interface BlueprintInventory {
1740
1794
  readonly filters?: BlueprintLogisticFilter[]
@@ -1745,7 +1799,7 @@ declare module "factorio:runtime" {
1745
1799
  }
1746
1800
  /**
1747
1801
  * Write form of {@link BlueprintInventory}, where some properties allow additional values as input compared to the read form.
1748
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/BlueprintInventory.html Online documentation}
1802
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/BlueprintInventory.html Online documentation}
1749
1803
  */
1750
1804
  export interface BlueprintInventoryWrite {
1751
1805
  readonly filters?: readonly BlueprintLogisticFilterWrite[]
@@ -1766,7 +1820,7 @@ declare module "factorio:runtime" {
1766
1820
  }
1767
1821
  /**
1768
1822
  * @see BlueprintControlBehaviorWrite
1769
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/BlueprintControlBehavior.html Online documentation}
1823
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/BlueprintControlBehavior.html Online documentation}
1770
1824
  */
1771
1825
  export interface BlueprintControlBehavior {
1772
1826
  /**
@@ -2019,7 +2073,7 @@ declare module "factorio:runtime" {
2019
2073
  }
2020
2074
  /**
2021
2075
  * Write form of {@link BlueprintControlBehavior}, where some properties allow additional values as input compared to the read form.
2022
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/BlueprintControlBehavior.html Online documentation}
2076
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/BlueprintControlBehavior.html Online documentation}
2023
2077
  */
2024
2078
  export interface BlueprintControlBehaviorWrite {
2025
2079
  /**
@@ -2300,7 +2354,7 @@ declare module "factorio:runtime" {
2300
2354
  * "2500 * (L - 3)"
2301
2355
  * @example
2302
2356
  * "(4e5 * (abs(speed) + 10.5)) / weight"
2303
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/MathExpression.html Online documentation}
2357
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/MathExpression.html Online documentation}
2304
2358
  */
2305
2359
  export type MathExpression = string
2306
2360
  /**
@@ -2483,7 +2537,7 @@ declare module "factorio:runtime" {
2483
2537
  * - `"wire-removed"`: {@link WireRemovedUndoRedoAction}
2484
2538
  * - `"rotated-entity"`: {@link RotatedEntityUndoRedoAction}
2485
2539
  * - `"copy-entity-settings"`: {@link CopyEntitySettingsUndoRedoAction}
2486
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/UndoRedoAction.html Online documentation}
2540
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/UndoRedoAction.html Online documentation}
2487
2541
  */
2488
2542
  export type UndoRedoAction =
2489
2543
  | BuiltEntityUndoRedoAction
@@ -2690,7 +2744,7 @@ declare module "factorio:runtime" {
2690
2744
  * - `"play-next-track"`
2691
2745
  * - `"play-previous-track"`
2692
2746
  * - `"pause-resume-music"`
2693
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LinkedGameControl.html Online documentation}
2747
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LinkedGameControl.html Online documentation}
2694
2748
  */
2695
2749
  export type LinkedGameControl =
2696
2750
  | "move-up"
@@ -2901,7 +2955,7 @@ declare module "factorio:runtime" {
2901
2955
  * A set of flags. Active flags are in the dictionary as `true`, while inactive flags aren't present at all.
2902
2956
  *
2903
2957
  * By default, none of these flags are set.
2904
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ItemPrototypeFlags.html Online documentation}
2958
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ItemPrototypeFlags.html Online documentation}
2905
2959
  */
2906
2960
  export type ItemPrototypeFlags = {
2907
2961
  readonly [T in ItemPrototypeFlag]?: true
@@ -2922,7 +2976,7 @@ declare module "factorio:runtime" {
2922
2976
  * - `"spawnable"`: Allows the item to be spawned by a quickbar shortcut or custom input.
2923
2977
  * - `"spoil-result"`
2924
2978
  * - `"ignore-spoil-time-modifier"`: Controls whether the spoil time ignores the spoil time modifier in the {@link DifficultySettings}.
2925
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ItemPrototypeFlag.html Online documentation}
2979
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ItemPrototypeFlag.html Online documentation}
2926
2980
  */
2927
2981
  export type ItemPrototypeFlag =
2928
2982
  | "draw-logistic-overlay"
@@ -2939,7 +2993,7 @@ declare module "factorio:runtime" {
2939
2993
  | "ignore-spoil-time-modifier"
2940
2994
  /**
2941
2995
  * @see UpgradeMapperSourceWrite
2942
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/UpgradeMapperSource.html Online documentation}
2996
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/UpgradeMapperSource.html Online documentation}
2943
2997
  */
2944
2998
  export interface UpgradeMapperSource {
2945
2999
  readonly type: "item" | "entity"
@@ -2958,7 +3012,7 @@ declare module "factorio:runtime" {
2958
3012
  }
2959
3013
  /**
2960
3014
  * Write form of {@link UpgradeMapperSource}, where some properties allow additional values as input compared to the read form.
2961
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/UpgradeMapperSource.html Online documentation}
3015
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/UpgradeMapperSource.html Online documentation}
2962
3016
  */
2963
3017
  export interface UpgradeMapperSourceWrite {
2964
3018
  readonly type: "item" | "entity"
@@ -3044,7 +3098,7 @@ declare module "factorio:runtime" {
3044
3098
  * - `"controllable-remove"`
3045
3099
  * - `"entity-ghost"`: Selects entities that are `entity-ghost`s.
3046
3100
  * - `"tile-ghost"`: Selects entities that are `tile-ghost`s.
3047
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/SelectionModeFlags.html Online documentation}
3101
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/SelectionModeFlags.html Online documentation}
3048
3102
  */
3049
3103
  export interface SelectionModeFlags {
3050
3104
  /**
@@ -3149,7 +3203,7 @@ declare module "factorio:runtime" {
3149
3203
  * - `"none"`
3150
3204
  * - `"whitelist"`
3151
3205
  * - `"blacklist"`
3152
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/PrototypeFilterMode.html Online documentation}
3206
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/PrototypeFilterMode.html Online documentation}
3153
3207
  */
3154
3208
  export type PrototypeFilterMode = "none" | "whitelist" | "blacklist"
3155
3209
  export interface UpgradeMapperDestination {
@@ -3187,7 +3241,7 @@ declare module "factorio:runtime" {
3187
3241
  }
3188
3242
  /**
3189
3243
  * @see DisplayPanelMessageDefinitionWrite
3190
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/DisplayPanelMessageDefinition.html Online documentation}
3244
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/DisplayPanelMessageDefinition.html Online documentation}
3191
3245
  */
3192
3246
  export interface DisplayPanelMessageDefinition {
3193
3247
  /**
@@ -3205,7 +3259,7 @@ declare module "factorio:runtime" {
3205
3259
  }
3206
3260
  /**
3207
3261
  * Write form of {@link DisplayPanelMessageDefinition}, where some properties allow additional values as input compared to the read form.
3208
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/DisplayPanelMessageDefinition.html Online documentation}
3262
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/DisplayPanelMessageDefinition.html Online documentation}
3209
3263
  */
3210
3264
  export interface DisplayPanelMessageDefinitionWrite {
3211
3265
  /**
@@ -3223,7 +3277,7 @@ declare module "factorio:runtime" {
3223
3277
  }
3224
3278
  /**
3225
3279
  * @see SignalIDWrite
3226
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/SignalID.html Online documentation}
3280
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/SignalID.html Online documentation}
3227
3281
  */
3228
3282
  export interface SignalID {
3229
3283
  /**
@@ -3241,7 +3295,7 @@ declare module "factorio:runtime" {
3241
3295
  }
3242
3296
  /**
3243
3297
  * Write form of {@link SignalID}, where some properties allow additional values as input compared to the read form.
3244
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/SignalID.html Online documentation}
3298
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/SignalID.html Online documentation}
3245
3299
  */
3246
3300
  export interface SignalIDWrite {
3247
3301
  /**
@@ -3267,7 +3321,7 @@ declare module "factorio:runtime" {
3267
3321
  * - `"space-location"`
3268
3322
  * - `"asteroid-chunk"`
3269
3323
  * - `"quality"`
3270
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/SignalIDType.html Online documentation}
3324
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/SignalIDType.html Online documentation}
3271
3325
  */
3272
3326
  export type SignalIDType =
3273
3327
  | "item"
@@ -3297,7 +3351,7 @@ declare module "factorio:runtime" {
3297
3351
  * -- What a custom recipe would look like that had a probability of 0.5 to return a
3298
3352
  * -- minimum amount of 1 and a maximum amount of 5
3299
3353
  * {{type="item", name="custom-item", probability=0.5, amount_min=1, amount_max=5}}
3300
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/Product.html Online documentation}
3354
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/Product.html Online documentation}
3301
3355
  */
3302
3356
  export type Product = ItemProduct | FluidProduct | ResearchProgressProduct
3303
3357
  /**
@@ -3308,7 +3362,7 @@ declare module "factorio:runtime" {
3308
3362
  * -- What a custom recipe would look like that had a probability of 0.5 to return a
3309
3363
  * -- minimum amount of 1 and a maximum amount of 5
3310
3364
  * {{type="item", name="custom-item", probability=0.5, amount_min=1, amount_max=5}}
3311
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ItemProduct.html Online documentation}
3365
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ItemProduct.html Online documentation}
3312
3366
  */
3313
3367
  export interface ItemProduct {
3314
3368
  readonly type: "item"
@@ -3352,7 +3406,7 @@ declare module "factorio:runtime" {
3352
3406
  * {{type="fluid", name="heavy-oil", amount=1},
3353
3407
  * {type="fluid", name="light-oil", amount=4.5},
3354
3408
  * {type="fluid", name="petroleum-gas", amount=5.5}}
3355
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/FluidProduct.html Online documentation}
3409
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/FluidProduct.html Online documentation}
3356
3410
  */
3357
3411
  export interface FluidProduct {
3358
3412
  readonly type: "fluid"
@@ -3400,7 +3454,7 @@ declare module "factorio:runtime" {
3400
3454
  }
3401
3455
  /**
3402
3456
  * @see BlueprintScheduleRecordWrite
3403
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/BlueprintScheduleRecord.html Online documentation}
3457
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/BlueprintScheduleRecord.html Online documentation}
3404
3458
  */
3405
3459
  export interface BlueprintScheduleRecord {
3406
3460
  /**
@@ -3414,7 +3468,7 @@ declare module "factorio:runtime" {
3414
3468
  }
3415
3469
  /**
3416
3470
  * Write form of {@link BlueprintScheduleRecord}, where some properties allow additional values as input compared to the read form.
3417
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/BlueprintScheduleRecord.html Online documentation}
3471
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/BlueprintScheduleRecord.html Online documentation}
3418
3472
  */
3419
3473
  export interface BlueprintScheduleRecordWrite {
3420
3474
  /**
@@ -3428,7 +3482,7 @@ declare module "factorio:runtime" {
3428
3482
  }
3429
3483
  /**
3430
3484
  * @see ScheduleRecordWrite
3431
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ScheduleRecord.html Online documentation}
3485
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ScheduleRecord.html Online documentation}
3432
3486
  */
3433
3487
  export interface ScheduleRecord {
3434
3488
  /**
@@ -3447,7 +3501,7 @@ declare module "factorio:runtime" {
3447
3501
  }
3448
3502
  /**
3449
3503
  * Write form of {@link ScheduleRecord}, where some properties allow additional values as input compared to the read form.
3450
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ScheduleRecord.html Online documentation}
3504
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ScheduleRecord.html Online documentation}
3451
3505
  */
3452
3506
  export interface ScheduleRecordWrite {
3453
3507
  /**
@@ -3466,7 +3520,7 @@ declare module "factorio:runtime" {
3466
3520
  }
3467
3521
  /**
3468
3522
  * @see BlueprintScheduleInterruptWrite
3469
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/BlueprintScheduleInterrupt.html Online documentation}
3523
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/BlueprintScheduleInterrupt.html Online documentation}
3470
3524
  */
3471
3525
  export interface BlueprintScheduleInterrupt {
3472
3526
  readonly name?: string
@@ -3476,7 +3530,7 @@ declare module "factorio:runtime" {
3476
3530
  }
3477
3531
  /**
3478
3532
  * Write form of {@link BlueprintScheduleInterrupt}, where some properties allow additional values as input compared to the read form.
3479
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/BlueprintScheduleInterrupt.html Online documentation}
3533
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/BlueprintScheduleInterrupt.html Online documentation}
3480
3534
  */
3481
3535
  export interface BlueprintScheduleInterruptWrite {
3482
3536
  readonly name?: string
@@ -3486,7 +3540,7 @@ declare module "factorio:runtime" {
3486
3540
  }
3487
3541
  /**
3488
3542
  * @see ScheduleInterruptWrite
3489
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ScheduleInterrupt.html Online documentation}
3543
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ScheduleInterrupt.html Online documentation}
3490
3544
  */
3491
3545
  export interface ScheduleInterrupt {
3492
3546
  readonly name?: string
@@ -3496,7 +3550,7 @@ declare module "factorio:runtime" {
3496
3550
  }
3497
3551
  /**
3498
3552
  * Write form of {@link ScheduleInterrupt}, where some properties allow additional values as input compared to the read form.
3499
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ScheduleInterrupt.html Online documentation}
3553
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ScheduleInterrupt.html Online documentation}
3500
3554
  */
3501
3555
  export interface ScheduleInterruptWrite {
3502
3556
  readonly name?: string
@@ -3506,7 +3560,7 @@ declare module "factorio:runtime" {
3506
3560
  }
3507
3561
  /**
3508
3562
  * @see WaitConditionWrite
3509
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/WaitCondition.html Online documentation}
3563
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/WaitCondition.html Online documentation}
3510
3564
  */
3511
3565
  export interface WaitCondition {
3512
3566
  readonly type: WaitConditionType
@@ -3537,7 +3591,7 @@ declare module "factorio:runtime" {
3537
3591
  }
3538
3592
  /**
3539
3593
  * Write form of {@link WaitCondition}, where some properties allow additional values as input compared to the read form.
3540
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/WaitCondition.html Online documentation}
3594
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/WaitCondition.html Online documentation}
3541
3595
  */
3542
3596
  export interface WaitConditionWrite {
3543
3597
  readonly type: WaitConditionType
@@ -3596,7 +3650,7 @@ declare module "factorio:runtime" {
3596
3650
  * - `"at_station"`
3597
3651
  * - `"not_at_station"`
3598
3652
  * - `"damage_taken"`
3599
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/WaitConditionType.html Online documentation}
3653
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/WaitConditionType.html Online documentation}
3600
3654
  */
3601
3655
  export type WaitConditionType =
3602
3656
  | "time"
@@ -3627,7 +3681,7 @@ declare module "factorio:runtime" {
3627
3681
  | "damage_taken"
3628
3682
  /**
3629
3683
  * @see BlueprintScheduleWrite
3630
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/BlueprintSchedule.html Online documentation}
3684
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/BlueprintSchedule.html Online documentation}
3631
3685
  */
3632
3686
  export interface BlueprintSchedule {
3633
3687
  readonly records?: BlueprintScheduleRecord[]
@@ -3636,7 +3690,7 @@ declare module "factorio:runtime" {
3636
3690
  }
3637
3691
  /**
3638
3692
  * Write form of {@link BlueprintSchedule}, where some properties allow additional values as input compared to the read form.
3639
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/BlueprintSchedule.html Online documentation}
3693
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/BlueprintSchedule.html Online documentation}
3640
3694
  */
3641
3695
  export interface BlueprintScheduleWrite {
3642
3696
  readonly records?: readonly BlueprintScheduleRecordWrite[]
@@ -3705,7 +3759,7 @@ declare module "factorio:runtime" {
3705
3759
  * - `"create-ghost-on-entity-death"`
3706
3760
  * - `"belt-stack-size-bonus"`
3707
3761
  * - `"vehicle-logistics"`
3708
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ModifierType.html Online documentation}
3762
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ModifierType.html Online documentation}
3709
3763
  */
3710
3764
  export type ModifierType =
3711
3765
  | "inserter-stack-size-bonus"
@@ -3824,7 +3878,7 @@ declare module "factorio:runtime" {
3824
3878
  * - `"capture-spawner"`: {@link CaptureSpawnerResearchTrigger}
3825
3879
  * - `"build-entity"`: {@link BuildEntityResearchTrigger}
3826
3880
  * - `"send-item-to-orbit"`: {@link SendItemToOrbitResearchTrigger}
3827
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ResearchTrigger.html Online documentation}
3881
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ResearchTrigger.html Online documentation}
3828
3882
  */
3829
3883
  export type ResearchTrigger =
3830
3884
  | CraftItemResearchTrigger
@@ -3834,90 +3888,6 @@ declare module "factorio:runtime" {
3834
3888
  | BuildEntityResearchTrigger
3835
3889
  | SendItemToOrbitResearchTrigger
3836
3890
  | OtherResearchTrigger
3837
- /**
3838
- * Used by {@link MapSettings} and {@link MapAndDifficultySettings}.
3839
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/AsteroidMapSettings.html Online documentation}
3840
- */
3841
- export interface AsteroidMapSettings {
3842
- readonly spawning_rate: double
3843
- readonly max_ray_portals_expanded_per_tick: uint
3844
- }
3845
- /**
3846
- * These values are for the time frame of one second (60 ticks).
3847
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/PollutionMapSettings.html Online documentation}
3848
- */
3849
- export interface PollutionMapSettings {
3850
- /**
3851
- * Whether pollution is enabled at all.
3852
- */
3853
- readonly enabled: boolean
3854
- /**
3855
- * The amount that is diffused to a neighboring chunk (possibly repeated for other directions as well). Defaults to `0.02`.
3856
- */
3857
- readonly diffusion_ratio: double
3858
- /**
3859
- * The amount of PUs that need to be in a chunk for it to start diffusing. Defaults to `15`.
3860
- */
3861
- readonly min_to_diffuse: double
3862
- /**
3863
- * The amount of pollution eaten by a chunk's tiles as a percentage of 1. Also known as absorption modifier. Defaults to `1`.
3864
- */
3865
- readonly ageing: double
3866
- /**
3867
- * Any amount of pollution larger than this value is visualized as this value instead. Defaults to `150`.
3868
- */
3869
- readonly expected_max_per_chunk: double
3870
- /**
3871
- * Any amount of pollution smaller than this value (but bigger than zero) is visualized as this value instead. Defaults to `50`.
3872
- */
3873
- readonly min_to_show_per_chunk: double
3874
- /**
3875
- * Defaults to `60`.
3876
- */
3877
- readonly min_pollution_to_damage_trees: double
3878
- /**
3879
- * Defaults to `150`.
3880
- */
3881
- readonly pollution_with_max_forest_damage: double
3882
- /**
3883
- * Defaults to `50`.
3884
- */
3885
- readonly pollution_per_tree_damage: double
3886
- /**
3887
- * Defaults to `10`.
3888
- */
3889
- readonly pollution_restored_per_tree_damage: double
3890
- /**
3891
- * Defaults to `20`.
3892
- */
3893
- readonly max_pollution_to_restore_trees: double
3894
- /**
3895
- * Defaults to `1`.
3896
- */
3897
- readonly enemy_attack_pollution_consumption_modifier: double
3898
- }
3899
- /**
3900
- * These values represent a percentual increase in evolution. This means a value of `0.1` would increase evolution by 10%.
3901
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/EnemyEvolutionMapSettings.html Online documentation}
3902
- */
3903
- export interface EnemyEvolutionMapSettings {
3904
- /**
3905
- * Whether enemy evolution is enabled at all.
3906
- */
3907
- readonly enabled: boolean
3908
- /**
3909
- * The amount evolution naturally progresses by every second. Defaults to `0.000004`.
3910
- */
3911
- readonly time_factor: double
3912
- /**
3913
- * The amount evolution progresses for every destroyed spawner. Defaults to `0.002`.
3914
- */
3915
- readonly destroy_factor: double
3916
- /**
3917
- * The amount evolution progresses for every unit of pollution. Defaults to `0.0000009`.
3918
- */
3919
- readonly pollution_factor: double
3920
- }
3921
3891
  /**
3922
3892
  * Candidate chunks are given scores to determine which one of them should be expanded into. This score takes into account various settings noted below. The iteration is over a square region centered around the chunk for which the calculation is done, and includes the central chunk as well. Distances are calculated as {@linkplain https://en.wikipedia.org/wiki/Taxicab_geometry Manhattan distance}.
3923
3893
  *
@@ -3936,7 +3906,7 @@ declare module "factorio:runtime" {
3936
3906
  * * neighbouring_base_chunk_coefficient^distance(chunk, neighbour)
3937
3907
  * score(chunk) = 1 / (1 + player + base)
3938
3908
  * ```
3939
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/EnemyExpansionMapSettings.html Online documentation}
3909
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/EnemyExpansionMapSettings.html Online documentation}
3940
3910
  */
3941
3911
  export interface EnemyExpansionMapSettings {
3942
3912
  /**
@@ -3992,6 +3962,14 @@ declare module "factorio:runtime" {
3992
3962
  */
3993
3963
  readonly max_expansion_cooldown: uint
3994
3964
  }
3965
+ /**
3966
+ * Used by {@link MapSettings} and {@link MapAndDifficultySettings}.
3967
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/AsteroidMapSettings.html Online documentation}
3968
+ */
3969
+ export interface AsteroidMapSettings {
3970
+ readonly spawning_rate: double
3971
+ readonly max_ray_portals_expanded_per_tick: uint
3972
+ }
3995
3973
  export interface SteeringMapSetting {
3996
3974
  /**
3997
3975
  * Does not include the radius of the unit.
@@ -4195,17 +4173,17 @@ declare module "factorio:runtime" {
4195
4173
  }
4196
4174
  /**
4197
4175
  * Technology difficulty settings. Updating any of the attributes will immediately take effect in the game engine.
4198
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/DifficultySettings.html Online documentation}
4176
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/DifficultySettings.html Online documentation}
4199
4177
  */
4200
4178
  export interface DifficultySettings {
4201
4179
  /**
4202
4180
  * A value in range [0.001, 1000].
4203
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/DifficultySettings.technology_price_multiplier.html Online documentation}
4181
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/DifficultySettings.technology_price_multiplier.html Online documentation}
4204
4182
  */
4205
4183
  technology_price_multiplier: double
4206
4184
  /**
4207
4185
  * A value in range [0.01, 100].
4208
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/DifficultySettings.spoil_time_modifier.html Online documentation}
4186
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/DifficultySettings.spoil_time_modifier.html Online documentation}
4209
4187
  */
4210
4188
  spoil_time_modifier: double
4211
4189
  }
@@ -4221,7 +4199,7 @@ declare module "factorio:runtime" {
4221
4199
  }
4222
4200
  /**
4223
4201
  * A standard table containing all {@link MapSettings} attributes plus an additional table that contains all {@link DifficultySettings} properties.
4224
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/MapAndDifficultySettings.html Online documentation}
4202
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/MapAndDifficultySettings.html Online documentation}
4225
4203
  */
4226
4204
  export interface MapAndDifficultySettings {
4227
4205
  readonly pollution: PollutionMapSettings
@@ -4242,7 +4220,7 @@ declare module "factorio:runtime" {
4242
4220
  * @example
4243
4221
  * -- Increase the number of short paths the pathfinder can cache.
4244
4222
  * game.map_settings.path_finder.short_cache_size = 15
4245
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/MapSettings.html Online documentation}
4223
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/MapSettings.html Online documentation}
4246
4224
  */
4247
4225
  export interface MapSettings {
4248
4226
  pollution: PollutionMapSettings
@@ -4254,13 +4232,89 @@ declare module "factorio:runtime" {
4254
4232
  asteroids: AsteroidMapSettings
4255
4233
  /**
4256
4234
  * If a behavior fails this many times, the enemy (or enemy group) is destroyed. This solves biters getting stuck within their own base.
4257
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/MapSettings.max_failed_behavior_count.html Online documentation}
4235
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/MapSettings.max_failed_behavior_count.html Online documentation}
4258
4236
  */
4259
4237
  max_failed_behavior_count: uint
4260
4238
  }
4239
+ /**
4240
+ * These values are for the time frame of one second (60 ticks).
4241
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/PollutionMapSettings.html Online documentation}
4242
+ */
4243
+ export interface PollutionMapSettings {
4244
+ /**
4245
+ * Whether pollution is enabled at all.
4246
+ */
4247
+ readonly enabled: boolean
4248
+ /**
4249
+ * The amount that is diffused to a neighboring chunk (possibly repeated for other directions as well). Defaults to `0.02`.
4250
+ */
4251
+ readonly diffusion_ratio: double
4252
+ /**
4253
+ * The amount of PUs that need to be in a chunk for it to start diffusing. Defaults to `15`.
4254
+ */
4255
+ readonly min_to_diffuse: double
4256
+ /**
4257
+ * The amount of pollution eaten by a chunk's tiles as a percentage of 1. Also known as absorption modifier. Defaults to `1`.
4258
+ */
4259
+ readonly ageing: double
4260
+ /**
4261
+ * Any amount of pollution larger than this value is visualized as this value instead. Defaults to `150`.
4262
+ */
4263
+ readonly expected_max_per_chunk: double
4264
+ /**
4265
+ * Any amount of pollution smaller than this value (but bigger than zero) is visualized as this value instead. Defaults to `50`.
4266
+ */
4267
+ readonly min_to_show_per_chunk: double
4268
+ /**
4269
+ * Defaults to `60`.
4270
+ */
4271
+ readonly min_pollution_to_damage_trees: double
4272
+ /**
4273
+ * Defaults to `150`.
4274
+ */
4275
+ readonly pollution_with_max_forest_damage: double
4276
+ /**
4277
+ * Defaults to `50`.
4278
+ */
4279
+ readonly pollution_per_tree_damage: double
4280
+ /**
4281
+ * Defaults to `10`.
4282
+ */
4283
+ readonly pollution_restored_per_tree_damage: double
4284
+ /**
4285
+ * Defaults to `20`.
4286
+ */
4287
+ readonly max_pollution_to_restore_trees: double
4288
+ /**
4289
+ * Defaults to `1`.
4290
+ */
4291
+ readonly enemy_attack_pollution_consumption_modifier: double
4292
+ }
4293
+ /**
4294
+ * These values represent a percentual increase in evolution. This means a value of `0.1` would increase evolution by 10%.
4295
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/EnemyEvolutionMapSettings.html Online documentation}
4296
+ */
4297
+ export interface EnemyEvolutionMapSettings {
4298
+ /**
4299
+ * Whether enemy evolution is enabled at all.
4300
+ */
4301
+ readonly enabled: boolean
4302
+ /**
4303
+ * The amount evolution naturally progresses by every second. Defaults to `0.000004`.
4304
+ */
4305
+ readonly time_factor: double
4306
+ /**
4307
+ * The amount evolution progresses for every destroyed spawner. Defaults to `0.002`.
4308
+ */
4309
+ readonly destroy_factor: double
4310
+ /**
4311
+ * The amount evolution progresses for every unit of pollution. Defaults to `0.0000009`.
4312
+ */
4313
+ readonly pollution_factor: double
4314
+ }
4261
4315
  /**
4262
4316
  * @see CliffPlacementSettingsWrite
4263
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/CliffPlacementSettings.html Online documentation}
4317
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/CliffPlacementSettings.html Online documentation}
4264
4318
  */
4265
4319
  export interface CliffPlacementSettings {
4266
4320
  /**
@@ -4290,7 +4344,7 @@ declare module "factorio:runtime" {
4290
4344
  }
4291
4345
  /**
4292
4346
  * Write form of {@link CliffPlacementSettings}, where some properties allow additional values as input compared to the read form.
4293
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/CliffPlacementSettings.html Online documentation}
4347
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/CliffPlacementSettings.html Online documentation}
4294
4348
  */
4295
4349
  export interface CliffPlacementSettingsWrite {
4296
4350
  /**
@@ -4320,7 +4374,7 @@ declare module "factorio:runtime" {
4320
4374
  }
4321
4375
  /**
4322
4376
  * @see AutoplaceSettingsWrite
4323
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/AutoplaceSettings.html Online documentation}
4377
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/AutoplaceSettings.html Online documentation}
4324
4378
  */
4325
4379
  export interface AutoplaceSettings {
4326
4380
  /**
@@ -4334,7 +4388,7 @@ declare module "factorio:runtime" {
4334
4388
  }
4335
4389
  /**
4336
4390
  * Write form of {@link AutoplaceSettings}, where some properties allow additional values as input compared to the read form.
4337
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/AutoplaceSettings.html Online documentation}
4391
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/AutoplaceSettings.html Online documentation}
4338
4392
  */
4339
4393
  export interface AutoplaceSettingsWrite {
4340
4394
  /**
@@ -4369,7 +4423,7 @@ declare module "factorio:runtime" {
4369
4423
  * surface.map_gen_settings = mgs
4370
4424
  * -- This does not require a NamedNoiseExpression to be defined, since literal numbers (and strings naming literal
4371
4425
  * -- numbers, e.g. `"123"`) are understood to stand for constant value expressions.
4372
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/MapGenSettings.html Online documentation}
4426
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/MapGenSettings.html Online documentation}
4373
4427
  */
4374
4428
  export interface MapGenSettings {
4375
4429
  /**
@@ -4424,7 +4478,7 @@ declare module "factorio:runtime" {
4424
4478
  }
4425
4479
  /**
4426
4480
  * Write form of {@link MapGenSettings}, where some properties allow additional values as input compared to the read form.
4427
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/MapGenSettings.html Online documentation}
4481
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/MapGenSettings.html Online documentation}
4428
4482
  */
4429
4483
  export interface MapGenSettingsWrite {
4430
4484
  /**
@@ -4479,7 +4533,7 @@ declare module "factorio:runtime" {
4479
4533
  }
4480
4534
  /**
4481
4535
  * Specifies how probability and richness are calculated when placing something on the map.
4482
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/AutoplaceSpecification.html Online documentation}
4536
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/AutoplaceSpecification.html Online documentation}
4483
4537
  */
4484
4538
  export interface AutoplaceSpecification {
4485
4539
  /**
@@ -4514,7 +4568,7 @@ declare module "factorio:runtime" {
4514
4568
  }
4515
4569
  /**
4516
4570
  * A single pipe connection for a given fluidbox.
4517
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/PipeConnection.html Online documentation}
4571
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/PipeConnection.html Online documentation}
4518
4572
  */
4519
4573
  export interface PipeConnection {
4520
4574
  readonly flow_direction: "input" | "output" | "input-output"
@@ -4579,7 +4633,7 @@ declare module "factorio:runtime" {
4579
4633
  * - `"check-box"`
4580
4634
  * - `"switch"`
4581
4635
  * - `"label"`
4582
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/SimulationWidgetType.html Online documentation}
4636
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/SimulationWidgetType.html Online documentation}
4583
4637
  */
4584
4638
  export type SimulationWidgetType =
4585
4639
  | "signal-id"
@@ -4613,9 +4667,10 @@ declare module "factorio:runtime" {
4613
4667
  * When `rail` is given, this can be provided to further narrow down direction from which that rail should be approached.
4614
4668
  */
4615
4669
  readonly rail_direction?: defines.rail_direction
4616
- readonly wait_conditions?: readonly WaitConditionWrite[]
4617
4670
  readonly temporary?: boolean
4671
+ readonly created_by_interrupt?: boolean
4618
4672
  readonly allows_unloading?: boolean
4673
+ readonly wait_conditions?: readonly WaitConditionWrite[]
4619
4674
  /**
4620
4675
  * If index is not given, the record is appended.
4621
4676
  */
@@ -4780,7 +4835,7 @@ declare module "factorio:runtime" {
4780
4835
  * - `"any-goal-accessible"`: The method will return {@link TrainPathFinderOneGoalResult}.
4781
4836
  * - `"all-goals-accessible"`: The method will return {@link TrainPathAllGoalsResult}.
4782
4837
  * - `"all-goals-penalties"`: The method will return {@link TrainPathAllGoalsResult} with `penalties`.
4783
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/TrainPathRequestType.html Online documentation}
4838
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/TrainPathRequestType.html Online documentation}
4784
4839
  */
4785
4840
  export type TrainPathRequestType = "path" | "any-goal-accessible" | "all-goals-accessible" | "all-goals-penalties"
4786
4841
  /**
@@ -4789,7 +4844,7 @@ declare module "factorio:runtime" {
4789
4844
  * - {@link RailEndGoal}
4790
4845
  * - {@link LuaRailEnd}
4791
4846
  * - {@link LuaEntity}: Only if it points at train-stop that is connected to a rail.
4792
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/TrainPathFinderGoal.html Online documentation}
4847
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/TrainPathFinderGoal.html Online documentation}
4793
4848
  */
4794
4849
  export type TrainPathFinderGoal = TrainStopGoal | RailEndGoal | LuaRailEnd | LuaEntity
4795
4850
  export interface TrainStopGoal {
@@ -4919,7 +4974,7 @@ declare module "factorio:runtime" {
4919
4974
  * - {@link LuaEntityMarkedForUpgradeEventFilter}
4920
4975
  * - {@link LuaScriptRaisedDestroyEventFilter}
4921
4976
  * @see EventFilterWrite
4922
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/EventFilter.html Online documentation}
4977
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/EventFilter.html Online documentation}
4923
4978
  */
4924
4979
  export type EventFilter =
4925
4980
  | LuaScriptRaisedTeleportedEventFilter[]
@@ -4949,7 +5004,7 @@ declare module "factorio:runtime" {
4949
5004
  | LuaScriptRaisedDestroyEventFilter[]
4950
5005
  /**
4951
5006
  * Write form of {@link EventFilter}, where some properties allow additional values as input compared to the read form.
4952
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/EventFilter.html Online documentation}
5007
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/EventFilter.html Online documentation}
4953
5008
  */
4954
5009
  export type EventFilterWrite =
4955
5010
  | readonly LuaScriptRaisedTeleportedEventFilter[]
@@ -5001,7 +5056,7 @@ declare module "factorio:runtime" {
5001
5056
  * - {@link LuaGuiElement}: Target type {@link defines.target_type.gui_element gui_element}; `useful_id` {@link LuaGuiElement#index LuaGuiElement::index}
5002
5057
  * - {@link LuaCargoHatch}: Target type {@link defines.target_type.cargo_hatch cargo_hatch}
5003
5058
  * - {@link LuaSchedule}: Target type {@link defines.target_type.schedule schedule}
5004
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/RegistrationTarget.html Online documentation}
5059
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/RegistrationTarget.html Online documentation}
5005
5060
  */
5006
5061
  export type RegistrationTarget =
5007
5062
  | LuaEntity
@@ -5071,7 +5126,7 @@ declare module "factorio:runtime" {
5071
5126
  * - {@link FluidPrototypeFilter}
5072
5127
  * - {@link EntityPrototypeFilter}
5073
5128
  * @see PrototypeFilterWrite
5074
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/PrototypeFilter.html Online documentation}
5129
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/PrototypeFilter.html Online documentation}
5075
5130
  */
5076
5131
  export type PrototypeFilter =
5077
5132
  | ModSettingPrototypeFilter[]
@@ -5088,7 +5143,7 @@ declare module "factorio:runtime" {
5088
5143
  | EntityPrototypeFilter[]
5089
5144
  /**
5090
5145
  * Write form of {@link PrototypeFilter}, where some properties allow additional values as input compared to the read form.
5091
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/PrototypeFilter.html Online documentation}
5146
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/PrototypeFilter.html Online documentation}
5092
5147
  */
5093
5148
  export type PrototypeFilterWrite =
5094
5149
  | readonly ModSettingPrototypeFilter[]
@@ -5107,7 +5162,7 @@ declare module "factorio:runtime" {
5107
5162
  * A set of flags. Active flags are in the dictionary as `true`, while inactive flags aren't present at all.
5108
5163
  *
5109
5164
  * By default, none of these flags are set.
5110
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/EntityPrototypeFlags.html Online documentation}
5165
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/EntityPrototypeFlags.html Online documentation}
5111
5166
  */
5112
5167
  export type EntityPrototypeFlags = {
5113
5168
  readonly [T in EntityPrototypeFlag]?: true
@@ -5131,7 +5186,6 @@ declare module "factorio:runtime" {
5131
5186
  * - `"not-deconstructable"`: Prevents the entity from being deconstructed.
5132
5187
  * - `"not-blueprintable"`: Prevents the entity from being part of a blueprint.
5133
5188
  * - `"hide-alt-info"`: Hides the alt-info of this entity when in alt-mode.
5134
- * - `"no-gap-fill-while-building"`
5135
5189
  * - `"not-flammable"`: Does not apply fire stickers to the entity.
5136
5190
  * - `"no-automated-item-removal"`: Prevents inserters and loaders from taking items from this entity.
5137
5191
  * - `"no-automated-item-insertion"`: Prevents inserters and loaders from inserting items into this entity.
@@ -5142,7 +5196,7 @@ declare module "factorio:runtime" {
5142
5196
  * - `"building-direction-16-way"`
5143
5197
  * - `"snap-to-rail-support-spot"`
5144
5198
  * - `"not-in-made-in"`: Prevents the entity from being shown in the "made in" list in recipe tooltips.
5145
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/EntityPrototypeFlag.html Online documentation}
5199
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/EntityPrototypeFlag.html Online documentation}
5146
5200
  */
5147
5201
  export type EntityPrototypeFlag =
5148
5202
  | "not-rotatable"
@@ -5160,7 +5214,6 @@ declare module "factorio:runtime" {
5160
5214
  | "not-deconstructable"
5161
5215
  | "not-blueprintable"
5162
5216
  | "hide-alt-info"
5163
- | "no-gap-fill-while-building"
5164
5217
  | "not-flammable"
5165
5218
  | "no-automated-item-removal"
5166
5219
  | "no-automated-item-insertion"
@@ -5178,7 +5231,7 @@ declare module "factorio:runtime" {
5178
5231
  * - `"local"`: The sound can be heard within the audible range around the speaker.
5179
5232
  * - `"surface"`: The sound can be heard anywhere on the speaker's surface.
5180
5233
  * - `"global"`: The sound can be heard everywhere.
5181
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ProgrammableSpeakerPlaybackMode.html Online documentation}
5234
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ProgrammableSpeakerPlaybackMode.html Online documentation}
5182
5235
  */
5183
5236
  export type ProgrammableSpeakerPlaybackMode = "local" | "surface" | "global"
5184
5237
  /**
@@ -5203,7 +5256,7 @@ declare module "factorio:runtime" {
5203
5256
  * - `"none-to-south"`
5204
5257
  * - `"south-to-none"`
5205
5258
  * - `"none-to-north"`
5206
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/CliffOrientation.html Online documentation}
5259
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/CliffOrientation.html Online documentation}
5207
5260
  */
5208
5261
  export type CliffOrientation =
5209
5262
  | "west-to-east"
@@ -5253,7 +5306,7 @@ declare module "factorio:runtime" {
5253
5306
  /**
5254
5307
  * Defines an item type that a blueprint entity will request.
5255
5308
  * @see BlueprintInsertPlanWrite
5256
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/BlueprintInsertPlan.html Online documentation}
5309
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/BlueprintInsertPlan.html Online documentation}
5257
5310
  */
5258
5311
  export interface BlueprintInsertPlan {
5259
5312
  /**
@@ -5267,7 +5320,7 @@ declare module "factorio:runtime" {
5267
5320
  }
5268
5321
  /**
5269
5322
  * Write form of {@link BlueprintInsertPlan}, where some properties allow additional values as input compared to the read form.
5270
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/BlueprintInsertPlan.html Online documentation}
5323
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/BlueprintInsertPlan.html Online documentation}
5271
5324
  */
5272
5325
  export interface BlueprintInsertPlanWrite {
5273
5326
  /**
@@ -5295,7 +5348,7 @@ declare module "factorio:runtime" {
5295
5348
  }
5296
5349
  /**
5297
5350
  * A single offer on a market entity.
5298
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/Offer.html Online documentation}
5351
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/Offer.html Online documentation}
5299
5352
  */
5300
5353
  export interface Offer {
5301
5354
  /**
@@ -5332,7 +5385,7 @@ declare module "factorio:runtime" {
5332
5385
  * - `"weapon"`
5333
5386
  * - `"explosion"`
5334
5387
  * - `"enemy"`
5335
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/SoundType.html Online documentation}
5388
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/SoundType.html Online documentation}
5336
5389
  */
5337
5390
  export type SoundType =
5338
5391
  | "game-effect"
@@ -5373,7 +5426,7 @@ declare module "factorio:runtime" {
5373
5426
  }
5374
5427
  /**
5375
5428
  * @see BlueprintLogisticFilterWrite
5376
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/BlueprintLogisticFilter.html Online documentation}
5429
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/BlueprintLogisticFilter.html Online documentation}
5377
5430
  */
5378
5431
  export interface BlueprintLogisticFilter {
5379
5432
  readonly index: LogisticFilterIndex
@@ -5403,7 +5456,7 @@ declare module "factorio:runtime" {
5403
5456
  }
5404
5457
  /**
5405
5458
  * Write form of {@link BlueprintLogisticFilter}, where some properties allow additional values as input compared to the read form.
5406
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/BlueprintLogisticFilter.html Online documentation}
5459
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/BlueprintLogisticFilter.html Online documentation}
5407
5460
  */
5408
5461
  export interface BlueprintLogisticFilterWrite {
5409
5462
  readonly index: LogisticFilterIndex
@@ -5433,7 +5486,7 @@ declare module "factorio:runtime" {
5433
5486
  }
5434
5487
  /**
5435
5488
  * @see LogisticSectionWrite
5436
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LogisticSection.html Online documentation}
5489
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LogisticSection.html Online documentation}
5437
5490
  */
5438
5491
  export interface LogisticSection {
5439
5492
  readonly index: uint8
@@ -5450,7 +5503,7 @@ declare module "factorio:runtime" {
5450
5503
  }
5451
5504
  /**
5452
5505
  * Write form of {@link LogisticSection}, where some properties allow additional values as input compared to the read form.
5453
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LogisticSection.html Online documentation}
5506
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LogisticSection.html Online documentation}
5454
5507
  */
5455
5508
  export interface LogisticSectionWrite {
5456
5509
  readonly index: uint8
@@ -5467,7 +5520,7 @@ declare module "factorio:runtime" {
5467
5520
  }
5468
5521
  /**
5469
5522
  * @see LogisticSectionsWrite
5470
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LogisticSections.html Online documentation}
5523
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LogisticSections.html Online documentation}
5471
5524
  */
5472
5525
  export interface LogisticSections {
5473
5526
  readonly sections?: LogisticSection[]
@@ -5478,7 +5531,7 @@ declare module "factorio:runtime" {
5478
5531
  }
5479
5532
  /**
5480
5533
  * Write form of {@link LogisticSections}, where some properties allow additional values as input compared to the read form.
5481
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LogisticSections.html Online documentation}
5534
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LogisticSections.html Online documentation}
5482
5535
  */
5483
5536
  export interface LogisticSectionsWrite {
5484
5537
  readonly sections?: readonly LogisticSectionWrite[]
@@ -5487,6 +5540,35 @@ declare module "factorio:runtime" {
5487
5540
  */
5488
5541
  readonly trash_not_requested?: boolean
5489
5542
  }
5543
+ /**
5544
+ * ## Union members
5545
+ * - {@link LuaItemPrototype}
5546
+ * - {@link LuaFluidPrototype}
5547
+ * - {@link LuaRecipePrototype}
5548
+ * - {@link LuaEntityPrototype}
5549
+ * - {@link LuaTilePrototype}
5550
+ * - {@link LuaSpaceLocationPrototype}
5551
+ * - {@link LuaTechnologyPrototype}: Does not actually have an entry in Factoriopedia.
5552
+ * - {@link LuaAmmoCategoryPrototype}
5553
+ * - {@link LuaSpaceConnectionPrototype}
5554
+ * - {@link LuaAsteroidChunkPrototype}
5555
+ * - {@link LuaVirtualSignalPrototype}
5556
+ * - {@link LuaSurfacePrototype}
5557
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/FactoriopediaID.html Online documentation}
5558
+ */
5559
+ export type FactoriopediaID =
5560
+ | LuaItemPrototype
5561
+ | LuaFluidPrototype
5562
+ | LuaRecipePrototype
5563
+ | LuaEntityPrototype
5564
+ | LuaTilePrototype
5565
+ | LuaSpaceLocationPrototype
5566
+ | LuaTechnologyPrototype
5567
+ | LuaAmmoCategoryPrototype
5568
+ | LuaSpaceConnectionPrototype
5569
+ | LuaAsteroidChunkPrototype
5570
+ | LuaVirtualSignalPrototype
5571
+ | LuaSurfacePrototype
5490
5572
  export interface TriggerItem {
5491
5573
  readonly type: "direct" | "area" | "line" | "cluster"
5492
5574
  readonly action_delivery?: TriggerDelivery[]
@@ -5507,9 +5589,14 @@ declare module "factorio:runtime" {
5507
5589
  readonly repeat_count: uint
5508
5590
  readonly probability: float
5509
5591
  }
5592
+ export interface TriggerModifierData {
5593
+ readonly damage_modifier?: float
5594
+ readonly damage_addition?: float
5595
+ readonly radius_modifier?: float
5596
+ }
5510
5597
  /**
5511
5598
  * A set of trigger target masks.
5512
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/TriggerTargetMask.html Online documentation}
5599
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/TriggerTargetMask.html Online documentation}
5513
5600
  */
5514
5601
  export type TriggerTargetMask = Record<string, true>
5515
5602
  export interface TriggerDelivery {
@@ -5554,7 +5641,7 @@ declare module "factorio:runtime" {
5554
5641
  * - `"destroy-decoratives"`
5555
5642
  * - `"camera-effect"`
5556
5643
  * - `"activate-impact"`
5557
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/TriggerEffectItemType.html Online documentation}
5644
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/TriggerEffectItemType.html Online documentation}
5558
5645
  */
5559
5646
  export type TriggerEffectItemType =
5560
5647
  | "damage"
@@ -5618,7 +5705,7 @@ declare module "factorio:runtime" {
5618
5705
  * -- If 'entity-description.furnace' exists, it is concatenated with "\n" and returned. Otherwise, if 'item-description.furnace'
5619
5706
  * -- exists, it is returned as-is. Otherwise, "optional fallback" is returned. If this value wasn't specified, the
5620
5707
  * -- translation result would be "Unknown key: 'item-description.furnace'".
5621
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LocalisedString.html Online documentation}
5708
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LocalisedString.html Online documentation}
5622
5709
  */
5623
5710
  export type LocalisedString = string | number | boolean | LuaObject | nil | [string, ...LocalisedString[]]
5624
5711
  export interface DisplayResolution {
@@ -5629,7 +5716,7 @@ declare module "factorio:runtime" {
5629
5716
  * The smooth orientation. It is a {@link float} in the range `[0, 1)` that covers a full circle, starting at the top and going clockwise. This means a value of `0` indicates "north", a value of `0.5` indicates "south".
5630
5717
  *
5631
5718
  * For example then, a value of `0.625` would indicate "south-west", and a value of `0.875` would indicate "north-west".
5632
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/RealOrientation.html Online documentation}
5719
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/RealOrientation.html Online documentation}
5633
5720
  */
5634
5721
  export type RealOrientation = float
5635
5722
  /**
@@ -5644,7 +5731,7 @@ declare module "factorio:runtime" {
5644
5731
  * @example
5645
5732
  * -- Shorthand
5646
5733
  * {1.625, 2.375}
5647
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/MapPosition.html Online documentation}
5734
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/MapPosition.html Online documentation}
5648
5735
  */
5649
5736
  export interface MapPosition {
5650
5737
  readonly x: double
@@ -5653,13 +5740,13 @@ declare module "factorio:runtime" {
5653
5740
  /**
5654
5741
  * Array form of {@link MapPosition}.
5655
5742
  * @see MapPosition
5656
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/MapPosition.html Online documentation}
5743
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/MapPosition.html Online documentation}
5657
5744
  */
5658
5745
  export type MapPositionArray = readonly [double, double]
5659
5746
  /**
5660
5747
  * Coordinates of a chunk in a {@link LuaSurface} where each integer `x`/`y` represents a different chunk. This uses the same format as {@link MapPosition}, meaning it can be specified either with or without explicit keys. A {@link MapPosition} can be translated to a ChunkPosition by dividing the `x`/`y` values by 32.
5661
5748
  * @see ChunkPositionArray
5662
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ChunkPosition.html Online documentation}
5749
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ChunkPosition.html Online documentation}
5663
5750
  */
5664
5751
  export interface ChunkPosition {
5665
5752
  readonly x: int
@@ -5668,13 +5755,13 @@ declare module "factorio:runtime" {
5668
5755
  /**
5669
5756
  * Array form of {@link ChunkPosition}.
5670
5757
  * @see ChunkPosition
5671
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ChunkPosition.html Online documentation}
5758
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ChunkPosition.html Online documentation}
5672
5759
  */
5673
5760
  export type ChunkPositionArray = readonly [int, int]
5674
5761
  /**
5675
5762
  * Coordinates of a tile on a {@link LuaSurface} where each integer `x`/`y` represents a different tile. This uses the same format as {@link MapPosition}, except it rounds any non-integer `x`/`y` down to whole numbers. It can be specified either with or without explicit keys.
5676
5763
  * @see TilePositionArray
5677
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/TilePosition.html Online documentation}
5764
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/TilePosition.html Online documentation}
5678
5765
  */
5679
5766
  export interface TilePosition {
5680
5767
  readonly x: int
@@ -5683,7 +5770,7 @@ declare module "factorio:runtime" {
5683
5770
  /**
5684
5771
  * Array form of {@link TilePosition}.
5685
5772
  * @see TilePosition
5686
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/TilePosition.html Online documentation}
5773
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/TilePosition.html Online documentation}
5687
5774
  */
5688
5775
  export type TilePositionArray = readonly [int, int]
5689
5776
  /**
@@ -5696,7 +5783,7 @@ declare module "factorio:runtime" {
5696
5783
  * @example
5697
5784
  * -- Shorthand
5698
5785
  * {1, 2}
5699
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/EquipmentPosition.html Online documentation}
5786
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/EquipmentPosition.html Online documentation}
5700
5787
  */
5701
5788
  export interface EquipmentPosition {
5702
5789
  readonly x: int
@@ -5705,13 +5792,13 @@ declare module "factorio:runtime" {
5705
5792
  /**
5706
5793
  * Array form of {@link EquipmentPosition}.
5707
5794
  * @see EquipmentPosition
5708
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/EquipmentPosition.html Online documentation}
5795
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/EquipmentPosition.html Online documentation}
5709
5796
  */
5710
5797
  export type EquipmentPositionArray = readonly [int, int]
5711
5798
  /**
5712
5799
  * Screen coordinates of a GUI element in a {@link LuaGui}. This uses the same format as {@link TilePosition}, meaning it can be specified either with or without explicit keys.
5713
5800
  * @see GuiLocationArray
5714
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/GuiLocation.html Online documentation}
5801
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/GuiLocation.html Online documentation}
5715
5802
  */
5716
5803
  export interface GuiLocation {
5717
5804
  readonly x: int
@@ -5720,12 +5807,12 @@ declare module "factorio:runtime" {
5720
5807
  /**
5721
5808
  * Array form of {@link GuiLocation}.
5722
5809
  * @see GuiLocation
5723
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/GuiLocation.html Online documentation}
5810
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/GuiLocation.html Online documentation}
5724
5811
  */
5725
5812
  export type GuiLocationArray = readonly [int, int]
5726
5813
  /**
5727
5814
  * A {@link ChunkPosition} with an added bounding box for the area of the chunk.
5728
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ChunkPositionAndArea.html Online documentation}
5815
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ChunkPositionAndArea.html Online documentation}
5729
5816
  */
5730
5817
  export interface ChunkPositionAndArea {
5731
5818
  readonly x: int
@@ -5734,7 +5821,7 @@ declare module "factorio:runtime" {
5734
5821
  }
5735
5822
  /**
5736
5823
  * A table used to define a manual shape for a piece of equipment.
5737
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/EquipmentPoint.html Online documentation}
5824
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/EquipmentPoint.html Online documentation}
5738
5825
  */
5739
5826
  export interface EquipmentPoint {
5740
5827
  readonly x: uint
@@ -5770,7 +5857,7 @@ declare module "factorio:runtime" {
5770
5857
  * Note that the API returns tags as a simple table, meaning any modifications to it will not propagate back to the game. Thus, to modify a set of tags, the whole table needs to be written back to the respective property.
5771
5858
  * @example
5772
5859
  * {a = 1, b = true, c = "three", d = {e = "f"}}
5773
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/Tags.html Online documentation}
5860
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/Tags.html Online documentation}
5774
5861
  */
5775
5862
  export type Tags = Record<string, AnyBasic>
5776
5863
  export interface SurfaceCondition {
@@ -5804,13 +5891,13 @@ declare module "factorio:runtime" {
5804
5891
  * A vector is a two-element array or dictionary containing the `x` and `y` components. The game will always provide the array format. Positive x goes east, positive y goes south.
5805
5892
  * @example
5806
5893
  * right = {1.0, 0.0}
5807
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/Vector.html Online documentation}
5894
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/Vector.html Online documentation}
5808
5895
  */
5809
5896
  export type Vector = MapPositionArray
5810
5897
  /**
5811
5898
  * An area defined using the map editor.
5812
5899
  * @see ScriptAreaWrite
5813
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ScriptArea.html Online documentation}
5900
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ScriptArea.html Online documentation}
5814
5901
  */
5815
5902
  export interface ScriptArea {
5816
5903
  readonly area: BoundingBox
@@ -5820,7 +5907,7 @@ declare module "factorio:runtime" {
5820
5907
  }
5821
5908
  /**
5822
5909
  * Write form of {@link ScriptArea}, where some properties allow additional values as input compared to the read form.
5823
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ScriptArea.html Online documentation}
5910
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ScriptArea.html Online documentation}
5824
5911
  */
5825
5912
  export interface ScriptAreaWrite {
5826
5913
  readonly area: BoundingBoxWrite | BoundingBoxArray
@@ -5831,7 +5918,7 @@ declare module "factorio:runtime" {
5831
5918
  /**
5832
5919
  * A position defined using the map editor.
5833
5920
  * @see ScriptPositionWrite
5834
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ScriptPosition.html Online documentation}
5921
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ScriptPosition.html Online documentation}
5835
5922
  */
5836
5923
  export interface ScriptPosition {
5837
5924
  readonly position: MapPosition
@@ -5841,7 +5928,7 @@ declare module "factorio:runtime" {
5841
5928
  }
5842
5929
  /**
5843
5930
  * Write form of {@link ScriptPosition}, where some properties allow additional values as input compared to the read form.
5844
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ScriptPosition.html Online documentation}
5931
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ScriptPosition.html Online documentation}
5845
5932
  */
5846
5933
  export interface ScriptPositionWrite {
5847
5934
  readonly position: MapPosition | MapPositionArray
@@ -5859,7 +5946,7 @@ declare module "factorio:runtime" {
5859
5946
  * red2 = {r = 0.5, a = 0.5} -- Same color as red1
5860
5947
  * black = {} -- All channels omitted: black
5861
5948
  * red1_short = {0.5, 0, 0, 0.5} -- Same color as red1 in short-hand notation
5862
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/Color.html Online documentation}
5949
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/Color.html Online documentation}
5863
5950
  */
5864
5951
  export interface Color {
5865
5952
  readonly r?: float
@@ -5870,13 +5957,13 @@ declare module "factorio:runtime" {
5870
5957
  /**
5871
5958
  * Array form of {@link Color}.
5872
5959
  * @see Color
5873
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/Color.html Online documentation}
5960
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/Color.html Online documentation}
5874
5961
  */
5875
5962
  export type ColorArray = readonly [r: double, g: double, b: double, a?: double]
5876
5963
  /**
5877
5964
  * Same as {@link Color}, but red, green, blue and alpha values can be any floating point number, without any special handling of the range [1, 255].
5878
5965
  * @see ColorModifierArray
5879
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ColorModifier.html Online documentation}
5966
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ColorModifier.html Online documentation}
5880
5967
  */
5881
5968
  export interface ColorModifier {
5882
5969
  readonly r?: float
@@ -5887,7 +5974,7 @@ declare module "factorio:runtime" {
5887
5974
  /**
5888
5975
  * Array form of {@link ColorModifier}.
5889
5976
  * @see ColorModifier
5890
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ColorModifier.html Online documentation}
5977
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ColorModifier.html Online documentation}
5891
5978
  */
5892
5979
  export type ColorModifierArray = readonly [r: double, g: double, b: double, a?: double]
5893
5980
  export interface CraftingQueueItem {
@@ -6030,7 +6117,7 @@ declare module "factorio:runtime" {
6030
6117
  }
6031
6118
  /**
6032
6119
  * @see AsteroidChunkWrite
6033
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/AsteroidChunk.html Online documentation}
6120
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/AsteroidChunk.html Online documentation}
6034
6121
  */
6035
6122
  export interface AsteroidChunk {
6036
6123
  /**
@@ -6042,7 +6129,7 @@ declare module "factorio:runtime" {
6042
6129
  }
6043
6130
  /**
6044
6131
  * Write form of {@link AsteroidChunk}, where some properties allow additional values as input compared to the read form.
6045
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/AsteroidChunk.html Online documentation}
6132
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/AsteroidChunk.html Online documentation}
6046
6133
  */
6047
6134
  export interface AsteroidChunkWrite {
6048
6135
  /**
@@ -6064,7 +6151,7 @@ declare module "factorio:runtime" {
6064
6151
  }
6065
6152
  /**
6066
6153
  * Either `icon`, `text`, or both must be provided.
6067
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ChartTagSpec.html Online documentation}
6154
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ChartTagSpec.html Online documentation}
6068
6155
  */
6069
6156
  export interface ChartTagSpec {
6070
6157
  readonly position: MapPosition | MapPositionArray
@@ -6074,93 +6161,93 @@ declare module "factorio:runtime" {
6074
6161
  }
6075
6162
  /**
6076
6163
  * Parameters that affect the look and control of the game. Updating any of the member attributes here will immediately take effect in the game engine.
6077
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/GameViewSettings.html Online documentation}
6164
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/GameViewSettings.html Online documentation}
6078
6165
  */
6079
6166
  export interface GameViewSettings {
6080
6167
  /**
6081
6168
  * Show the controller GUI elements. This includes the toolbar, the selected tool slot, the armour slot, and the gun and ammunition slots.
6082
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/GameViewSettings.show_controller_gui.html Online documentation}
6169
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/GameViewSettings.show_controller_gui.html Online documentation}
6083
6170
  */
6084
6171
  show_controller_gui: boolean
6085
6172
  /**
6086
6173
  * Show the chart in the upper right-hand corner of the screen.
6087
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/GameViewSettings.show_minimap.html Online documentation}
6174
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/GameViewSettings.show_minimap.html Online documentation}
6088
6175
  */
6089
6176
  show_minimap: boolean
6090
6177
  /**
6091
6178
  * Show research progress and name in the upper right-hand corner of the screen.
6092
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/GameViewSettings.show_research_info.html Online documentation}
6179
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/GameViewSettings.show_research_info.html Online documentation}
6093
6180
  */
6094
6181
  show_research_info: boolean
6095
6182
  /**
6096
6183
  * Show overlay icons on entities. Also known as "alt-mode".
6097
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/GameViewSettings.show_entity_info.html Online documentation}
6184
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/GameViewSettings.show_entity_info.html Online documentation}
6098
6185
  */
6099
6186
  show_entity_info: boolean
6100
6187
  /**
6101
6188
  * Show the flashing alert icons next to the player's toolbar.
6102
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/GameViewSettings.show_alert_gui.html Online documentation}
6189
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/GameViewSettings.show_alert_gui.html Online documentation}
6103
6190
  */
6104
6191
  show_alert_gui: boolean
6105
6192
  /**
6106
6193
  * When `true` (the default), mousing over an entity will select it. Otherwise, moving the mouse won't update entity selection.
6107
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/GameViewSettings.update_entity_selection.html Online documentation}
6194
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/GameViewSettings.update_entity_selection.html Online documentation}
6108
6195
  */
6109
6196
  update_entity_selection: boolean
6110
6197
  /**
6111
6198
  * When `true` (`false` is default), the rails will always show the rail block visualisation.
6112
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/GameViewSettings.show_rail_block_visualisation.html Online documentation}
6199
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/GameViewSettings.show_rail_block_visualisation.html Online documentation}
6113
6200
  */
6114
6201
  show_rail_block_visualisation: boolean
6115
6202
  /**
6116
6203
  * Shows or hides the buttons row.
6117
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/GameViewSettings.show_side_menu.html Online documentation}
6204
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/GameViewSettings.show_side_menu.html Online documentation}
6118
6205
  */
6119
6206
  show_side_menu: boolean
6120
6207
  /**
6121
6208
  * Shows or hides the view options when map is opened.
6122
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/GameViewSettings.show_map_view_options.html Online documentation}
6209
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/GameViewSettings.show_map_view_options.html Online documentation}
6123
6210
  */
6124
6211
  show_map_view_options: boolean
6125
6212
  /**
6126
6213
  * Shows or hides the tooltip that is displayed when selecting an entity.
6127
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/GameViewSettings.show_entity_tooltip.html Online documentation}
6214
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/GameViewSettings.show_entity_tooltip.html Online documentation}
6128
6215
  */
6129
6216
  show_entity_tooltip: boolean
6130
6217
  /**
6131
6218
  * Shows or hides quickbar of shortcuts.
6132
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/GameViewSettings.show_quickbar.html Online documentation}
6219
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/GameViewSettings.show_quickbar.html Online documentation}
6133
6220
  */
6134
6221
  show_quickbar: boolean
6135
6222
  /**
6136
6223
  * Shows or hides the shortcut bar.
6137
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/GameViewSettings.show_shortcut_bar.html Online documentation}
6224
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/GameViewSettings.show_shortcut_bar.html Online documentation}
6138
6225
  */
6139
6226
  show_shortcut_bar: boolean
6140
6227
  /**
6141
6228
  * Shows or hides the crafting queue.
6142
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/GameViewSettings.show_crafting_queue.html Online documentation}
6229
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/GameViewSettings.show_crafting_queue.html Online documentation}
6143
6230
  */
6144
6231
  show_crafting_queue: boolean
6145
6232
  /**
6146
6233
  * Shows or hides the tool window with the weapons and armor.
6147
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/GameViewSettings.show_tool_bar.html Online documentation}
6234
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/GameViewSettings.show_tool_bar.html Online documentation}
6148
6235
  */
6149
6236
  show_tool_bar: boolean
6150
6237
  /**
6151
6238
  * Shows or hides the mouse and keyboard/controller button hints in the bottom left corner if they are enabled in the interface settings.
6152
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/GameViewSettings.show_hotkey_suggestions.html Online documentation}
6239
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/GameViewSettings.show_hotkey_suggestions.html Online documentation}
6153
6240
  */
6154
6241
  show_hotkey_suggestions: boolean
6155
6242
  /**
6156
6243
  * Shows or hides the surface list while in Remote View.
6157
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/GameViewSettings.show_surface_list.html Online documentation}
6244
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/GameViewSettings.show_surface_list.html Online documentation}
6158
6245
  */
6159
6246
  show_surface_list: boolean
6160
6247
  }
6161
6248
  /**
6162
6249
  * The data that can be extracted from a map exchange string, as a plain table.
6163
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/MapExchangeStringData.html Online documentation}
6250
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/MapExchangeStringData.html Online documentation}
6164
6251
  */
6165
6252
  export interface MapExchangeStringData {
6166
6253
  readonly map_settings: MapAndDifficultySettings
@@ -6168,7 +6255,7 @@ declare module "factorio:runtime" {
6168
6255
  }
6169
6256
  /**
6170
6257
  * @see BlueprintSignalIconWrite
6171
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/BlueprintSignalIcon.html Online documentation}
6258
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/BlueprintSignalIcon.html Online documentation}
6172
6259
  */
6173
6260
  export interface BlueprintSignalIcon {
6174
6261
  /**
@@ -6182,7 +6269,7 @@ declare module "factorio:runtime" {
6182
6269
  }
6183
6270
  /**
6184
6271
  * Write form of {@link BlueprintSignalIcon}, where some properties allow additional values as input compared to the read form.
6185
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/BlueprintSignalIcon.html Online documentation}
6272
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/BlueprintSignalIcon.html Online documentation}
6186
6273
  */
6187
6274
  export interface BlueprintSignalIconWrite {
6188
6275
  /**
@@ -6211,12 +6298,12 @@ declare module "factorio:runtime" {
6211
6298
  * - `target_entity_number`
6212
6299
  *
6213
6300
  * - `target_wire_connector_id`
6214
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/BlueprintWire.html Online documentation}
6301
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/BlueprintWire.html Online documentation}
6215
6302
  */
6216
6303
  export type BlueprintWire = readonly [uint, defines.wire_connector_id, uint, defines.wire_connector_id]
6217
6304
  /**
6218
6305
  * @see TileWrite
6219
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/Tile.html Online documentation}
6306
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/Tile.html Online documentation}
6220
6307
  */
6221
6308
  export interface Tile {
6222
6309
  /**
@@ -6230,7 +6317,7 @@ declare module "factorio:runtime" {
6230
6317
  }
6231
6318
  /**
6232
6319
  * Write form of {@link Tile}, where some properties allow additional values as input compared to the read form.
6233
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/Tile.html Online documentation}
6320
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/Tile.html Online documentation}
6234
6321
  */
6235
6322
  export interface TileWrite {
6236
6323
  /**
@@ -6285,7 +6372,7 @@ declare module "factorio:runtime" {
6285
6372
  *
6286
6373
  * Other attributes may be specified depending on `type`:
6287
6374
  * - `"fluid"`: {@link FluidIngredient}
6288
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/Ingredient.html Online documentation}
6375
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/Ingredient.html Online documentation}
6289
6376
  */
6290
6377
  export type Ingredient = FluidIngredient | OtherIngredient
6291
6378
  export interface Loot {
@@ -6451,7 +6538,7 @@ declare module "factorio:runtime" {
6451
6538
  * - `"unlock-recipe"`: {@link UnlockRecipeTechnologyModifier}
6452
6539
  * - `"nothing"`: {@link NothingTechnologyModifier}
6453
6540
  * - Other types: {@link OtherTechnologyModifier}
6454
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/TechnologyModifier.html Online documentation}
6541
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/TechnologyModifier.html Online documentation}
6455
6542
  */
6456
6543
  export type TechnologyModifier =
6457
6544
  | GunSpeedTechnologyModifier
@@ -6463,7 +6550,7 @@ declare module "factorio:runtime" {
6463
6550
  | OtherTechnologyModifier
6464
6551
  /**
6465
6552
  * A fragment of a functional program used to generate coherent noise, probably for purposes related to terrain generation. These can only be meaningfully written/modified during the data load phase. More detailed information is found on the {@link import("factorio:prototype").NamedNoiseExpression prototype docs}.
6466
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/NoiseExpression.html Online documentation}
6553
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/NoiseExpression.html Online documentation}
6467
6554
  */
6468
6555
  export interface NoiseExpression {
6469
6556
  /**
@@ -6516,7 +6603,7 @@ declare module "factorio:runtime" {
6516
6603
  * - `"very-high"`: equivalent to `2`.
6517
6604
  * - `"very-big"`: equivalent to `2`.
6518
6605
  * - `"very-good"`: equivalent to `2`.
6519
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/MapGenSize.html Online documentation}
6606
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/MapGenSize.html Online documentation}
6520
6607
  */
6521
6608
  export type MapGenSize =
6522
6609
  | float
@@ -6538,7 +6625,7 @@ declare module "factorio:runtime" {
6538
6625
  | "very-good"
6539
6626
  /**
6540
6627
  * @see AutoplaceControlWrite
6541
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/AutoplaceControl.html Online documentation}
6628
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/AutoplaceControl.html Online documentation}
6542
6629
  */
6543
6630
  export interface AutoplaceControl {
6544
6631
  /**
@@ -6556,7 +6643,7 @@ declare module "factorio:runtime" {
6556
6643
  }
6557
6644
  /**
6558
6645
  * Write form of {@link AutoplaceControl}, where some properties allow additional values as input compared to the read form.
6559
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/AutoplaceControl.html Online documentation}
6646
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/AutoplaceControl.html Online documentation}
6560
6647
  */
6561
6648
  export interface AutoplaceControlWrite {
6562
6649
  /**
@@ -6575,10 +6662,10 @@ declare module "factorio:runtime" {
6575
6662
  /**
6576
6663
  * All other MapGenSettings feed into named noise expressions, and therefore placement can be overridden by including the name of a property in this dictionary. The probability and richness functions for placing specific tiles, entities, and decoratives can be overridden by including an entry named `{tile|entity|decorative}:(prototype name):{probability|richness}`.
6577
6664
  *
6578
- * {@link https://lua-api.factorio.com/2.0.44/concepts/PropertyExpressionNames.html > Values either name a NamedNoiseExpression or can be literal numbers, stored as strings (e.g. `5`). All other controls can be overridden by a property expression names. Notable properties:}
6665
+ * {@link https://lua-api.factorio.com/2.0.47/concepts/PropertyExpressionNames.html > Values either name a NamedNoiseExpression or can be literal numbers, stored as strings (e.g. `5`). All other controls can be overridden by a property expression names. Notable properties:}
6579
6666
  *
6580
- * {@link https://lua-api.factorio.com/2.0.44/concepts/PropertyExpressionNames.html > Climate controls ('Moisture' and 'Terrain type' at the bottom of the Terrain tab in the map generator GUI) don't have their own dedicated structures in MapGenSettings. Instead, their values are stored as property expression overrides with long names:}
6581
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/PropertyExpressionNames.html Online documentation}
6667
+ * {@link https://lua-api.factorio.com/2.0.47/concepts/PropertyExpressionNames.html > Climate controls ('Moisture' and 'Terrain type' at the bottom of the Terrain tab in the map generator GUI) don't have their own dedicated structures in MapGenSettings. Instead, their values are stored as property expression overrides with long names:}
6668
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/PropertyExpressionNames.html Online documentation}
6582
6669
  */
6583
6670
  export type PropertyExpressionNames = Record<string, string>
6584
6671
  export interface AdvancedMapGenSettings {
@@ -6601,7 +6688,7 @@ declare module "factorio:runtime" {
6601
6688
  }
6602
6689
  /**
6603
6690
  * An actual signal transmitted by the network.
6604
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/Signal.html Online documentation}
6691
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/Signal.html Online documentation}
6605
6692
  */
6606
6693
  export interface Signal {
6607
6694
  /**
@@ -6615,7 +6702,7 @@ declare module "factorio:runtime" {
6615
6702
  }
6616
6703
  /**
6617
6704
  * A single filter used by an infinity-filters instance.
6618
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/InfinityInventoryFilter.html Online documentation}
6705
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/InfinityInventoryFilter.html Online documentation}
6619
6706
  */
6620
6707
  export interface InfinityInventoryFilter {
6621
6708
  /**
@@ -6637,7 +6724,7 @@ declare module "factorio:runtime" {
6637
6724
  }
6638
6725
  /**
6639
6726
  * A single filter used by an infinity-pipe type entity.
6640
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/InfinityPipeFilter.html Online documentation}
6727
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/InfinityPipeFilter.html Online documentation}
6641
6728
  */
6642
6729
  export interface InfinityPipeFilter {
6643
6730
  /**
@@ -6691,7 +6778,7 @@ declare module "factorio:runtime" {
6691
6778
  }
6692
6779
  /**
6693
6780
  * The settings used by a heat-interface type entity.
6694
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/HeatSetting.html Online documentation}
6781
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/HeatSetting.html Online documentation}
6695
6782
  */
6696
6783
  export interface HeatSetting {
6697
6784
  /**
@@ -6709,7 +6796,7 @@ declare module "factorio:runtime" {
6709
6796
  }
6710
6797
  /**
6711
6798
  * @see ArithmeticCombinatorParametersWrite
6712
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ArithmeticCombinatorParameters.html Online documentation}
6799
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ArithmeticCombinatorParameters.html Online documentation}
6713
6800
  */
6714
6801
  export interface ArithmeticCombinatorParameters {
6715
6802
  /**
@@ -6739,7 +6826,7 @@ declare module "factorio:runtime" {
6739
6826
  }
6740
6827
  /**
6741
6828
  * Write form of {@link ArithmeticCombinatorParameters}, where some properties allow additional values as input compared to the read form.
6742
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ArithmeticCombinatorParameters.html Online documentation}
6829
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ArithmeticCombinatorParameters.html Online documentation}
6743
6830
  */
6744
6831
  export interface ArithmeticCombinatorParametersWrite {
6745
6832
  /**
@@ -6769,7 +6856,7 @@ declare module "factorio:runtime" {
6769
6856
  }
6770
6857
  /**
6771
6858
  * @see SelectorCombinatorParametersWrite
6772
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/SelectorCombinatorParameters.html Online documentation}
6859
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/SelectorCombinatorParameters.html Online documentation}
6773
6860
  */
6774
6861
  export interface SelectorCombinatorParameters {
6775
6862
  /**
@@ -6795,7 +6882,7 @@ declare module "factorio:runtime" {
6795
6882
  }
6796
6883
  /**
6797
6884
  * Write form of {@link SelectorCombinatorParameters}, where some properties allow additional values as input compared to the read form.
6798
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/SelectorCombinatorParameters.html Online documentation}
6885
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/SelectorCombinatorParameters.html Online documentation}
6799
6886
  */
6800
6887
  export interface SelectorCombinatorParametersWrite {
6801
6888
  /**
@@ -6837,7 +6924,7 @@ declare module "factorio:runtime" {
6837
6924
  }
6838
6925
  /**
6839
6926
  * @see CircuitConditionWrite
6840
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/CircuitCondition.html Online documentation}
6927
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/CircuitCondition.html Online documentation}
6841
6928
  */
6842
6929
  export interface CircuitCondition {
6843
6930
  /**
@@ -6859,7 +6946,7 @@ declare module "factorio:runtime" {
6859
6946
  }
6860
6947
  /**
6861
6948
  * Write form of {@link CircuitCondition}, where some properties allow additional values as input compared to the read form.
6862
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/CircuitCondition.html Online documentation}
6949
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/CircuitCondition.html Online documentation}
6863
6950
  */
6864
6951
  export interface CircuitConditionWrite {
6865
6952
  /**
@@ -6881,7 +6968,7 @@ declare module "factorio:runtime" {
6881
6968
  }
6882
6969
  /**
6883
6970
  * @see CircuitConditionDefinitionWrite
6884
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/CircuitConditionDefinition.html Online documentation}
6971
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/CircuitConditionDefinition.html Online documentation}
6885
6972
  */
6886
6973
  export interface CircuitConditionDefinition {
6887
6974
  /**
@@ -6895,7 +6982,7 @@ declare module "factorio:runtime" {
6895
6982
  }
6896
6983
  /**
6897
6984
  * Write form of {@link CircuitConditionDefinition}, where some properties allow additional values as input compared to the read form.
6898
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/CircuitConditionDefinition.html Online documentation}
6985
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/CircuitConditionDefinition.html Online documentation}
6899
6986
  */
6900
6987
  export interface CircuitConditionDefinitionWrite {
6901
6988
  /**
@@ -6931,6 +7018,7 @@ declare module "factorio:runtime" {
6931
7018
  readonly result: LuaTilePrototype
6932
7019
  readonly condition_size: uint
6933
7020
  readonly condition: CollisionMask
7021
+ readonly invert: boolean
6934
7022
  }
6935
7023
  export interface BaseCommand {
6936
7024
  /**
@@ -7170,7 +7258,7 @@ declare module "factorio:runtime" {
7170
7258
  * - {@link defines.command.stop}: {@link StopCommand}
7171
7259
  * - {@link defines.command.flee}: {@link FleeCommand}
7172
7260
  * - {@link defines.command.build_base}: {@link BuildBaseCommand}
7173
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/Command.html Online documentation}
7261
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/Command.html Online documentation}
7174
7262
  */
7175
7263
  export type Command =
7176
7264
  | AttackCommand
@@ -7184,7 +7272,7 @@ declare module "factorio:runtime" {
7184
7272
  | BuildBaseCommand
7185
7273
  /**
7186
7274
  * Write form of {@link Command}, where some properties allow additional values as input compared to the read form.
7187
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/Command.html Online documentation}
7275
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/Command.html Online documentation}
7188
7276
  */
7189
7277
  export type CommandWrite =
7190
7278
  | AttackCommand
@@ -7269,7 +7357,7 @@ declare module "factorio:runtime" {
7269
7357
  * These are both full stacks of iron plates (for iron-plate, a full stack is 100 plates)
7270
7358
  * "iron-plate"
7271
7359
  * {name="iron-plate", count=100}
7272
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/SimpleItemStack.html Online documentation}
7360
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/SimpleItemStack.html Online documentation}
7273
7361
  */
7274
7362
  export type SimpleItemStack = string | ItemStackDefinition
7275
7363
  /**
@@ -7279,7 +7367,7 @@ declare module "factorio:runtime" {
7279
7367
  * - SurfaceIndex: It will be the index of the surface. `nauvis` has index `1`, the first surface-created surface will have index `2` and so on.
7280
7368
  * - `string`: It will be the surface name. E.g. `"nauvis"`.
7281
7369
  * - {@link LuaSurface}: A reference to {@link LuaSurface} may be passed directly.
7282
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/SurfaceIdentification.html Online documentation}
7370
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/SurfaceIdentification.html Online documentation}
7283
7371
  */
7284
7372
  export type SurfaceIdentification = SurfaceIndex | string | LuaSurface
7285
7373
  /**
@@ -7289,7 +7377,7 @@ declare module "factorio:runtime" {
7289
7377
  * - PlayerIndex: The player index.
7290
7378
  * - `string`: The player name.
7291
7379
  * - {@link LuaPlayer}: A reference to {@link LuaPlayer} may be passed directly.
7292
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/PlayerIdentification.html Online documentation}
7380
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/PlayerIdentification.html Online documentation}
7293
7381
  */
7294
7382
  export type PlayerIdentification = PlayerIndex | string | LuaPlayer
7295
7383
  /**
@@ -7298,7 +7386,7 @@ declare module "factorio:runtime" {
7298
7386
  * ## Union members
7299
7387
  * - {@link SimpleItemStack}
7300
7388
  * - {@link LuaItemStack}
7301
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ItemStackIdentification.html Online documentation}
7389
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ItemStackIdentification.html Online documentation}
7302
7390
  */
7303
7391
  export type ItemStackIdentification = SimpleItemStack | LuaItemStack
7304
7392
  /**
@@ -7308,7 +7396,7 @@ declare module "factorio:runtime" {
7308
7396
  * - `"entity"`: Fires at an entity.
7309
7397
  * - `"position"`: Fires directly at a position.
7310
7398
  * - `"direction"`: Fires in a direction.
7311
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/TargetType.html Online documentation}
7399
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/TargetType.html Online documentation}
7312
7400
  */
7313
7401
  export type TargetType = "entity" | "position" | "direction"
7314
7402
  export interface BeamTarget {
@@ -7345,8 +7433,8 @@ declare module "factorio:runtime" {
7345
7433
  *
7346
7434
  * The validity of a SoundPath can be verified at runtime using {@link LuaHelpers#is_valid_sound_path LuaHelpers::is_valid_sound_path}.
7347
7435
  *
7348
- * {@link https://lua-api.factorio.com/2.0.44/concepts/SoundPath.html > The utility and ambient types each contain general use sound prototypes defined by the game itself.}
7349
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/SoundPath.html Online documentation}
7436
+ * {@link https://lua-api.factorio.com/2.0.47/concepts/SoundPath.html > The utility and ambient types each contain general use sound prototypes defined by the game itself.}
7437
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/SoundPath.html Online documentation}
7350
7438
  */
7351
7439
  export type SoundPath = (string & { _?: never }) | `${SoundCategory}/${string}`
7352
7440
  export interface CircularParticleCreationSpecification {
@@ -7478,7 +7566,7 @@ declare module "factorio:runtime" {
7478
7566
  * Other attributes may be specified depending on `type`:
7479
7567
  * - `"projectile"`: {@link ProjectileAttackParameters}
7480
7568
  * - `"stream"`: {@link StreamAttackParameters}
7481
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/AttackParameters.html Online documentation}
7569
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/AttackParameters.html Online documentation}
7482
7570
  */
7483
7571
  export type AttackParameters = ProjectileAttackParameters | StreamAttackParameters | OtherAttackParameters
7484
7572
  export interface GunShift4Way {
@@ -7544,7 +7632,7 @@ declare module "factorio:runtime" {
7544
7632
  * - `"use-on-self"`: {@link UseOnSelfCapsuleAction}
7545
7633
  * - `"artillery-remote"`: {@link ArtilleryRemoteCapsuleAction}
7546
7634
  * - `"destroy-cliffs"`: {@link DestroyCliffsCapsuleAction}
7547
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/CapsuleAction.html Online documentation}
7635
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/CapsuleAction.html Online documentation}
7548
7636
  */
7549
7637
  export type CapsuleAction =
7550
7638
  | ThrowCapsuleAction
@@ -7584,12 +7672,12 @@ declare module "factorio:runtime" {
7584
7672
  }
7585
7673
  /**
7586
7674
  * Any basic type (string, number, boolean) or table.
7587
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/AnyBasic.html Online documentation}
7675
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/AnyBasic.html Online documentation}
7588
7676
  */
7589
7677
  export type AnyBasic = string | boolean | number | table
7590
7678
  /**
7591
7679
  * Any basic type (string, number, boolean), table, or LuaObject.
7592
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/Any.html Online documentation}
7680
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/Any.html Online documentation}
7593
7681
  */
7594
7682
  export type Any = string | boolean | number | table | LuaObject
7595
7683
  export interface ProgrammableSpeakerParameters {
@@ -7599,7 +7687,7 @@ declare module "factorio:runtime" {
7599
7687
  }
7600
7688
  /**
7601
7689
  * @see ProgrammableSpeakerAlertParametersWrite
7602
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ProgrammableSpeakerAlertParameters.html Online documentation}
7690
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ProgrammableSpeakerAlertParameters.html Online documentation}
7603
7691
  */
7604
7692
  export interface ProgrammableSpeakerAlertParameters {
7605
7693
  readonly show_alert: boolean
@@ -7609,7 +7697,7 @@ declare module "factorio:runtime" {
7609
7697
  }
7610
7698
  /**
7611
7699
  * Write form of {@link ProgrammableSpeakerAlertParameters}, where some properties allow additional values as input compared to the read form.
7612
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ProgrammableSpeakerAlertParameters.html Online documentation}
7700
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ProgrammableSpeakerAlertParameters.html Online documentation}
7613
7701
  */
7614
7702
  export interface ProgrammableSpeakerAlertParametersWrite {
7615
7703
  readonly show_alert: boolean
@@ -7641,7 +7729,7 @@ declare module "factorio:runtime" {
7641
7729
  * - `"top-right"`
7642
7730
  * - `"right"`: The same as `"middle-right"`
7643
7731
  * - `"bottom-right"`
7644
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/Alignment.html Online documentation}
7732
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/Alignment.html Online documentation}
7645
7733
  */
7646
7734
  export type Alignment =
7647
7735
  | "top-left"
@@ -7674,8 +7762,8 @@ declare module "factorio:runtime" {
7674
7762
  _customEventIdBrand: any
7675
7763
  }
7676
7764
  /**
7677
- * Information about the event that has been raised. The table can also contain other fields depending on the type of event. See {@linkplain https://lua-api.factorio.com/2.0.44/events.html the list of Factorio events} for more information on these.
7678
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/EventData.html Online documentation}
7765
+ * Information about the event that has been raised. The table can also contain other fields depending on the type of event. See {@linkplain https://lua-api.factorio.com/2.0.47/events.html the list of Factorio events} for more information on these.
7766
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/EventData.html Online documentation}
7679
7767
  */
7680
7768
  export interface EventData {
7681
7769
  /**
@@ -7784,7 +7872,7 @@ declare module "factorio:runtime" {
7784
7872
  * - `"button-7"`
7785
7873
  * - `"button-8"`
7786
7874
  * - `"button-9"`
7787
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/MouseButtonFlags.html Online documentation}
7875
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/MouseButtonFlags.html Online documentation}
7788
7876
  */
7789
7877
  export interface MouseButtonFlags {
7790
7878
  readonly left?: true
@@ -7807,7 +7895,7 @@ declare module "factorio:runtime" {
7807
7895
  * - `"not-friend"`: Forces which are not friends pass.
7808
7896
  * - `"same"`: The same force pass.
7809
7897
  * - `"not-same"`: The non-same forces pass.
7810
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ForceCondition.html Online documentation}
7898
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ForceCondition.html Online documentation}
7811
7899
  */
7812
7900
  export type ForceCondition = "all" | "enemy" | "ally" | "friend" | "not-friend" | "same" | "not-same"
7813
7901
  export interface ItemStackLocation {
@@ -7845,7 +7933,7 @@ declare module "factorio:runtime" {
7845
7933
  * - `"tabbed-pane"`: A collection of `tab`s and their contents. Relevant event: {@link OnGuiSelectedTabChangedEvent on_gui_selected_tab_changed}
7846
7934
  * - `"tab"`: A tab for use in a `tabbed-pane`.
7847
7935
  * - `"switch"`: A switch with three possible states. Can have labels attached to either side. Relevant event: {@link OnGuiSwitchStateChangedEvent on_gui_switch_state_changed}
7848
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/GuiElementType.html Online documentation}
7936
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/GuiElementType.html Online documentation}
7849
7937
  */
7850
7938
  export type GuiElementType =
7851
7939
  | "button"
@@ -7885,7 +7973,7 @@ declare module "factorio:runtime" {
7885
7973
  * - `"position"`
7886
7974
  * - `"crafting_queue"`
7887
7975
  * - `"item_stack"`: Will point to a given item stack in an inventory.
7888
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/GuiArrowType.html Online documentation}
7976
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/GuiArrowType.html Online documentation}
7889
7977
  */
7890
7978
  export type GuiArrowType =
7891
7979
  | "nowhere"
@@ -7902,7 +7990,7 @@ declare module "factorio:runtime" {
7902
7990
  * ## Union members
7903
7991
  * - `"horizontal"`
7904
7992
  * - `"vertical"`
7905
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/GuiDirection.html Online documentation}
7993
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/GuiDirection.html Online documentation}
7906
7994
  */
7907
7995
  export type GuiDirection = "horizontal" | "vertical"
7908
7996
  /**
@@ -7914,7 +8002,7 @@ declare module "factorio:runtime" {
7914
8002
  * - `"always"`
7915
8003
  * - `"auto"`
7916
8004
  * - `"auto-and-reserve-space"`
7917
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ScrollPolicy.html Online documentation}
8005
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ScrollPolicy.html Online documentation}
7918
8006
  */
7919
8007
  export type ScrollPolicy = "never" | "dont-show-but-allow-scrolling" | "always" | "auto" | "auto-and-reserve-space"
7920
8008
  export interface RailLocation {
@@ -7931,71 +8019,71 @@ declare module "factorio:runtime" {
7931
8019
  }
7932
8020
  /**
7933
8021
  * A floating-point number. This is a single-precision floating point number. Whilst Lua only uses double-precision numbers, when a function takes a float, the game engine will immediately convert the double-precision number to single-precision.
7934
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/float.html Online documentation}
8022
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/float.html Online documentation}
7935
8023
  */
7936
8024
  export type float = number
7937
8025
  /**
7938
8026
  * A double-precision floating-point number. This is the same data type as all Lua numbers use.
7939
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/double.html Online documentation}
8027
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/double.html Online documentation}
7940
8028
  */
7941
8029
  export type double = number
7942
8030
  /**
7943
8031
  * 32-bit signed integer. Possible values are `-2 147 483 648` to `2 147 483 647`.
7944
8032
  *
7945
8033
  * Since Lua 5.2 only uses doubles, any API that asks for `int` will floor the given double.
7946
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/int.html Online documentation}
8034
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/int.html Online documentation}
7947
8035
  */
7948
8036
  export type int = number
7949
8037
  /**
7950
8038
  * 8-bit signed integer. Possible values are `-128` to `127`.
7951
8039
  *
7952
8040
  * Since Lua 5.2 only uses doubles, any API that asks for `int8` will floor the given double.
7953
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/int8.html Online documentation}
8041
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/int8.html Online documentation}
7954
8042
  */
7955
8043
  export type int8 = number
7956
8044
  /**
7957
8045
  * 32-bit unsigned integer. Possible values are `0` to `4 294 967 295`.
7958
8046
  *
7959
8047
  * Since Lua 5.2 only uses doubles, any API that asks for `uint` will floor the given double.
7960
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/uint.html Online documentation}
8048
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/uint.html Online documentation}
7961
8049
  */
7962
8050
  export type uint = number
7963
8051
  /**
7964
8052
  * 8-bit unsigned integer. Possible values are `0` to `255`.
7965
8053
  *
7966
8054
  * Since Lua 5.2 only uses doubles, any API that asks for `uint8` will floor the given double.
7967
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/uint8.html Online documentation}
8055
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/uint8.html Online documentation}
7968
8056
  */
7969
8057
  export type uint8 = number
7970
8058
  /**
7971
8059
  * 16-bit unsigned integer. Possible values are `0` to `65 535`.
7972
8060
  *
7973
8061
  * Since Lua 5.2 only uses doubles, any API that asks for `uint16` will floor the given double.
7974
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/uint16.html Online documentation}
8062
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/uint16.html Online documentation}
7975
8063
  */
7976
8064
  export type uint16 = number
7977
8065
  /**
7978
8066
  * 64-bit unsigned integer. Possible values are `0` to `18 446 744 073 709 551 615`.
7979
8067
  *
7980
8068
  * Since Lua 5.2 only uses doubles, any API that asks for `uint64` will floor the given double.
7981
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/uint64.html Online documentation}
8069
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/uint64.html Online documentation}
7982
8070
  */
7983
8071
  export type uint64 = number
7984
8072
  /**
7985
8073
  * Nil is the type of the value `nil`, whose main property is to be different from any other value. It usually represents the absence of a useful value.
7986
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/nil.html Online documentation}
8074
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/nil.html Online documentation}
7987
8075
  */
7988
8076
  export type nil = undefined
7989
8077
  /**
7990
8078
  * Tables are enclosed in curly brackets, like this `{}`.
7991
8079
  *
7992
8080
  * Throughout the API docs, the terms "array" and "dictionary" are used. These are fundamentally just {@linkplain http://www.lua.org/pil/2.5.html Lua tables}, but have a limitation on which kind of table keys can be used. An array is a table that uses continuous integer keys starting at `1`, while a dictionary can use numeric or string keys in any order or combination.
7993
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/table.html Online documentation}
8081
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/table.html Online documentation}
7994
8082
  */
7995
8083
  export type table = object
7996
8084
  /**
7997
- * Any LuaObject listed on the {@linkplain https://lua-api.factorio.com/2.0.44/classes.html Classes} page.
7998
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaObject.html Online documentation}
8085
+ * Any LuaObject listed on the {@linkplain https://lua-api.factorio.com/2.0.47/classes.html Classes} page.
8086
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaObject.html Online documentation}
7999
8087
  */
8000
8088
  export interface LuaObject {
8001
8089
  readonly object_name: string
@@ -8054,7 +8142,7 @@ declare module "factorio:runtime" {
8054
8142
  * - `"type"`: {@link TypeModSettingPrototypeFilter}
8055
8143
  * - `"mod"`: {@link ModModSettingPrototypeFilter}
8056
8144
  * - `"setting-type"`: {@link SettingTypeModSettingPrototypeFilter}
8057
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ModSettingPrototypeFilter.html Online documentation}
8145
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ModSettingPrototypeFilter.html Online documentation}
8058
8146
  */
8059
8147
  export type ModSettingPrototypeFilter =
8060
8148
  | TypeModSettingPrototypeFilter
@@ -8118,7 +8206,7 @@ declare module "factorio:runtime" {
8118
8206
  * Other attributes may be specified depending on `filter`:
8119
8207
  * - `"type"`: {@link TypeSpaceLocationPrototypeFilter}
8120
8208
  * - `"solar-power-in-space"`: {@link SolarPowerInSpaceSpaceLocationPrototypeFilter}
8121
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/SpaceLocationPrototypeFilter.html Online documentation}
8209
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/SpaceLocationPrototypeFilter.html Online documentation}
8122
8210
  */
8123
8211
  export type SpaceLocationPrototypeFilter =
8124
8212
  | TypeSpaceLocationPrototypeFilter
@@ -8126,7 +8214,7 @@ declare module "factorio:runtime" {
8126
8214
  | OtherSpaceLocationPrototypeFilter
8127
8215
  /**
8128
8216
  * Write form of {@link SpaceLocationPrototypeFilter}, where some properties allow additional values as input compared to the read form.
8129
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/SpaceLocationPrototypeFilter.html Online documentation}
8217
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/SpaceLocationPrototypeFilter.html Online documentation}
8130
8218
  */
8131
8219
  export type SpaceLocationPrototypeFilterWrite =
8132
8220
  | TypeSpaceLocationPrototypeFilter
@@ -8174,7 +8262,7 @@ declare module "factorio:runtime" {
8174
8262
  *
8175
8263
  * Other attributes may be specified depending on `filter`:
8176
8264
  * - `"collision-mask"`: {@link CollisionMaskDecorativePrototypeFilter}
8177
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/DecorativePrototypeFilter.html Online documentation}
8265
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/DecorativePrototypeFilter.html Online documentation}
8178
8266
  */
8179
8267
  export type DecorativePrototypeFilter = CollisionMaskDecorativePrototypeFilter | OtherDecorativePrototypeFilter
8180
8268
  /**
@@ -8316,7 +8404,7 @@ declare module "factorio:runtime" {
8316
8404
  * - `"vehicle-friction-modifier"`: {@link VehicleFrictionModifierTilePrototypeFilter}
8317
8405
  * - `"decorative-removal-probability"`: {@link DecorativeRemovalProbabilityTilePrototypeFilter}
8318
8406
  * - `"absorptions-per-second"`: {@link AbsorptionsPerSecondTilePrototypeFilter}
8319
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/TilePrototypeFilter.html Online documentation}
8407
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/TilePrototypeFilter.html Online documentation}
8320
8408
  */
8321
8409
  export type TilePrototypeFilter =
8322
8410
  | CollisionMaskTilePrototypeFilter
@@ -8327,7 +8415,7 @@ declare module "factorio:runtime" {
8327
8415
  | OtherTilePrototypeFilter
8328
8416
  /**
8329
8417
  * Write form of {@link TilePrototypeFilter}, where some properties allow additional values as input compared to the read form.
8330
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/TilePrototypeFilter.html Online documentation}
8418
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/TilePrototypeFilter.html Online documentation}
8331
8419
  */
8332
8420
  export type TilePrototypeFilterWrite =
8333
8421
  | CollisionMaskTilePrototypeFilter
@@ -8682,7 +8770,7 @@ declare module "factorio:runtime" {
8682
8770
  * - `"fuel-acceleration-multiplier"`: {@link FuelAccelerationMultiplierItemPrototypeFilter}
8683
8771
  * - `"fuel-top-speed-multiplier"`: {@link FuelTopSpeedMultiplierItemPrototypeFilter}
8684
8772
  * - `"fuel-emissions-multiplier"`: {@link FuelEmissionsMultiplierItemPrototypeFilter}
8685
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ItemPrototypeFilter.html Online documentation}
8773
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ItemPrototypeFilter.html Online documentation}
8686
8774
  */
8687
8775
  export type ItemPrototypeFilter =
8688
8776
  | PlaceResultItemPrototypeFilter
@@ -8704,7 +8792,7 @@ declare module "factorio:runtime" {
8704
8792
  | OtherItemPrototypeFilter
8705
8793
  /**
8706
8794
  * Write form of {@link ItemPrototypeFilter}, where some properties allow additional values as input compared to the read form.
8707
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/ItemPrototypeFilter.html Online documentation}
8795
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/ItemPrototypeFilter.html Online documentation}
8708
8796
  */
8709
8797
  export type ItemPrototypeFilterWrite =
8710
8798
  | PlaceResultItemPrototypeFilterWrite
@@ -8844,7 +8932,7 @@ declare module "factorio:runtime" {
8844
8932
  * - `"level"`: {@link LevelTechnologyPrototypeFilter}
8845
8933
  * - `"max-level"`: {@link MaxLevelTechnologyPrototypeFilter}
8846
8934
  * - `"time"`: {@link TimeTechnologyPrototypeFilter}
8847
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/TechnologyPrototypeFilter.html Online documentation}
8935
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/TechnologyPrototypeFilter.html Online documentation}
8848
8936
  */
8849
8937
  export type TechnologyPrototypeFilter =
8850
8938
  | ResearchUnitIngredientTechnologyPrototypeFilter
@@ -8855,7 +8943,7 @@ declare module "factorio:runtime" {
8855
8943
  | OtherTechnologyPrototypeFilter
8856
8944
  /**
8857
8945
  * Write form of {@link TechnologyPrototypeFilter}, where some properties allow additional values as input compared to the read form.
8858
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/TechnologyPrototypeFilter.html Online documentation}
8946
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/TechnologyPrototypeFilter.html Online documentation}
8859
8947
  */
8860
8948
  export type TechnologyPrototypeFilterWrite =
8861
8949
  | ResearchUnitIngredientTechnologyPrototypeFilter
@@ -9115,7 +9203,7 @@ declare module "factorio:runtime" {
9115
9203
  * - `"emissions-multiplier"`: {@link EmissionsMultiplierRecipePrototypeFilter}
9116
9204
  * - `"request-paste-multiplier"`: {@link RequestPasteMultiplierRecipePrototypeFilter}
9117
9205
  * - `"overload-multiplier"`: {@link OverloadMultiplierRecipePrototypeFilter}
9118
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/RecipePrototypeFilter.html Online documentation}
9206
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/RecipePrototypeFilter.html Online documentation}
9119
9207
  */
9120
9208
  export type RecipePrototypeFilter =
9121
9209
  | HasIngredientItemRecipePrototypeFilter
@@ -9131,7 +9219,7 @@ declare module "factorio:runtime" {
9131
9219
  | OtherRecipePrototypeFilter
9132
9220
  /**
9133
9221
  * Write form of {@link RecipePrototypeFilter}, where some properties allow additional values as input compared to the read form.
9134
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/RecipePrototypeFilter.html Online documentation}
9222
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/RecipePrototypeFilter.html Online documentation}
9135
9223
  */
9136
9224
  export type RecipePrototypeFilterWrite =
9137
9225
  | HasIngredientItemRecipePrototypeFilterWrite
@@ -9183,7 +9271,7 @@ declare module "factorio:runtime" {
9183
9271
  *
9184
9272
  * Other attributes may be specified depending on `filter`:
9185
9273
  * - `"type"`: {@link TypeAchievementPrototypeFilter}
9186
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/AchievementPrototypeFilter.html Online documentation}
9274
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/AchievementPrototypeFilter.html Online documentation}
9187
9275
  */
9188
9276
  export type AchievementPrototypeFilter = TypeAchievementPrototypeFilter | OtherAchievementPrototypeFilter
9189
9277
  /**
@@ -9224,7 +9312,7 @@ declare module "factorio:runtime" {
9224
9312
  *
9225
9313
  * Other attributes may be specified depending on `filter`:
9226
9314
  * - `"type"`: {@link TypeEquipmentPrototypeFilter}
9227
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/EquipmentPrototypeFilter.html Online documentation}
9315
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/EquipmentPrototypeFilter.html Online documentation}
9228
9316
  */
9229
9317
  export type EquipmentPrototypeFilter = TypeEquipmentPrototypeFilter | OtherEquipmentPrototypeFilter
9230
9318
  /**
@@ -9409,7 +9497,7 @@ declare module "factorio:runtime" {
9409
9497
  * - `"fuel-value"`: {@link FuelValueFluidPrototypeFilter}
9410
9498
  * - `"emissions-multiplier"`: {@link EmissionsMultiplierFluidPrototypeFilter}
9411
9499
  * - `"gas-temperature"`: {@link GasTemperatureFluidPrototypeFilter}
9412
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/FluidPrototypeFilter.html Online documentation}
9500
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/FluidPrototypeFilter.html Online documentation}
9413
9501
  */
9414
9502
  export type FluidPrototypeFilter =
9415
9503
  | NameFluidPrototypeFilter
@@ -9423,7 +9511,7 @@ declare module "factorio:runtime" {
9423
9511
  | OtherFluidPrototypeFilter
9424
9512
  /**
9425
9513
  * Write form of {@link FluidPrototypeFilter}, where some properties allow additional values as input compared to the read form.
9426
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/FluidPrototypeFilter.html Online documentation}
9514
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/FluidPrototypeFilter.html Online documentation}
9427
9515
  */
9428
9516
  export type FluidPrototypeFilterWrite =
9429
9517
  | NameFluidPrototypeFilter
@@ -9663,7 +9751,7 @@ declare module "factorio:runtime" {
9663
9751
  * - `"selection-priority"`: {@link SelectionPriorityEntityPrototypeFilter}
9664
9752
  * - `"emissions-per-second"`: {@link EmissionsPerSecondEntityPrototypeFilter}
9665
9753
  * - `"crafting-category"`: {@link CraftingCategoryEntityPrototypeFilter}
9666
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/EntityPrototypeFilter.html Online documentation}
9754
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/EntityPrototypeFilter.html Online documentation}
9667
9755
  */
9668
9756
  export type EntityPrototypeFilter =
9669
9757
  | NameEntityPrototypeFilter
@@ -9677,7 +9765,7 @@ declare module "factorio:runtime" {
9677
9765
  | OtherEntityPrototypeFilter
9678
9766
  /**
9679
9767
  * Write form of {@link EntityPrototypeFilter}, where some properties allow additional values as input compared to the read form.
9680
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/EntityPrototypeFilter.html Online documentation}
9768
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/EntityPrototypeFilter.html Online documentation}
9681
9769
  */
9682
9770
  export type EntityPrototypeFilterWrite =
9683
9771
  | NameEntityPrototypeFilter
@@ -9786,7 +9874,7 @@ declare module "factorio:runtime" {
9786
9874
  * - `"name"`: {@link NameScriptRaisedTeleportedEventFilter}
9787
9875
  * - `"ghost_type"`: {@link GhostTypeScriptRaisedTeleportedEventFilter}
9788
9876
  * - `"ghost_name"`: {@link GhostNameScriptRaisedTeleportedEventFilter}
9789
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaScriptRaisedTeleportedEventFilter.html Online documentation}
9877
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaScriptRaisedTeleportedEventFilter.html Online documentation}
9790
9878
  */
9791
9879
  export type LuaScriptRaisedTeleportedEventFilter =
9792
9880
  | TypeScriptRaisedTeleportedEventFilter
@@ -9891,7 +9979,7 @@ declare module "factorio:runtime" {
9891
9979
  * - `"name"`: {@link NamePreRobotMinedEntityEventFilter}
9892
9980
  * - `"ghost_type"`: {@link GhostTypePreRobotMinedEntityEventFilter}
9893
9981
  * - `"ghost_name"`: {@link GhostNamePreRobotMinedEntityEventFilter}
9894
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaPreRobotMinedEntityEventFilter.html Online documentation}
9982
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaPreRobotMinedEntityEventFilter.html Online documentation}
9895
9983
  */
9896
9984
  export type LuaPreRobotMinedEntityEventFilter =
9897
9985
  | TypePreRobotMinedEntityEventFilter
@@ -9996,7 +10084,7 @@ declare module "factorio:runtime" {
9996
10084
  * - `"name"`: {@link NameScriptRaisedBuiltEventFilter}
9997
10085
  * - `"ghost_type"`: {@link GhostTypeScriptRaisedBuiltEventFilter}
9998
10086
  * - `"ghost_name"`: {@link GhostNameScriptRaisedBuiltEventFilter}
9999
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaScriptRaisedBuiltEventFilter.html Online documentation}
10087
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaScriptRaisedBuiltEventFilter.html Online documentation}
10000
10088
  */
10001
10089
  export type LuaScriptRaisedBuiltEventFilter =
10002
10090
  | TypeScriptRaisedBuiltEventFilter
@@ -10101,7 +10189,7 @@ declare module "factorio:runtime" {
10101
10189
  * - `"name"`: {@link NamePlatformMinedEntityEventFilter}
10102
10190
  * - `"ghost_type"`: {@link GhostTypePlatformMinedEntityEventFilter}
10103
10191
  * - `"ghost_name"`: {@link GhostNamePlatformMinedEntityEventFilter}
10104
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaPlatformMinedEntityEventFilter.html Online documentation}
10192
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaPlatformMinedEntityEventFilter.html Online documentation}
10105
10193
  */
10106
10194
  export type LuaPlatformMinedEntityEventFilter =
10107
10195
  | TypePlatformMinedEntityEventFilter
@@ -10218,7 +10306,7 @@ declare module "factorio:runtime" {
10218
10306
  * - `"ghost_type"`: {@link GhostTypeRobotBuiltEntityEventFilter}
10219
10307
  * - `"ghost_name"`: {@link GhostNameRobotBuiltEntityEventFilter}
10220
10308
  * - `"force"`: {@link ForceRobotBuiltEntityEventFilter}
10221
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaRobotBuiltEntityEventFilter.html Online documentation}
10309
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaRobotBuiltEntityEventFilter.html Online documentation}
10222
10310
  */
10223
10311
  export type LuaRobotBuiltEntityEventFilter =
10224
10312
  | TypeRobotBuiltEntityEventFilter
@@ -10324,7 +10412,7 @@ declare module "factorio:runtime" {
10324
10412
  * - `"name"`: {@link NamePrePlayerMinedEntityEventFilter}
10325
10413
  * - `"ghost_type"`: {@link GhostTypePrePlayerMinedEntityEventFilter}
10326
10414
  * - `"ghost_name"`: {@link GhostNamePrePlayerMinedEntityEventFilter}
10327
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaPrePlayerMinedEntityEventFilter.html Online documentation}
10415
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaPrePlayerMinedEntityEventFilter.html Online documentation}
10328
10416
  */
10329
10417
  export type LuaPrePlayerMinedEntityEventFilter =
10330
10418
  | TypePrePlayerMinedEntityEventFilter
@@ -10431,7 +10519,7 @@ declare module "factorio:runtime" {
10431
10519
  * - `"name"`: {@link NameEntityDeconstructionCancelledEventFilter}
10432
10520
  * - `"ghost_type"`: {@link GhostTypeEntityDeconstructionCancelledEventFilter}
10433
10521
  * - `"ghost_name"`: {@link GhostNameEntityDeconstructionCancelledEventFilter}
10434
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaEntityDeconstructionCancelledEventFilter.html Online documentation}
10522
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaEntityDeconstructionCancelledEventFilter.html Online documentation}
10435
10523
  */
10436
10524
  export type LuaEntityDeconstructionCancelledEventFilter =
10437
10525
  | TypeEntityDeconstructionCancelledEventFilter
@@ -10536,7 +10624,7 @@ declare module "factorio:runtime" {
10536
10624
  * - `"name"`: {@link NamePreGhostUpgradedEventFilter}
10537
10625
  * - `"ghost_type"`: {@link GhostTypePreGhostUpgradedEventFilter}
10538
10626
  * - `"ghost_name"`: {@link GhostNamePreGhostUpgradedEventFilter}
10539
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaPreGhostUpgradedEventFilter.html Online documentation}
10627
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaPreGhostUpgradedEventFilter.html Online documentation}
10540
10628
  */
10541
10629
  export type LuaPreGhostUpgradedEventFilter =
10542
10630
  | TypePreGhostUpgradedEventFilter
@@ -10653,7 +10741,7 @@ declare module "factorio:runtime" {
10653
10741
  * - `"ghost_type"`: {@link GhostTypePlatformBuiltEntityEventFilter}
10654
10742
  * - `"ghost_name"`: {@link GhostNamePlatformBuiltEntityEventFilter}
10655
10743
  * - `"force"`: {@link ForcePlatformBuiltEntityEventFilter}
10656
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaPlatformBuiltEntityEventFilter.html Online documentation}
10744
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaPlatformBuiltEntityEventFilter.html Online documentation}
10657
10745
  */
10658
10746
  export type LuaPlatformBuiltEntityEventFilter =
10659
10747
  | TypePlatformBuiltEntityEventFilter
@@ -10759,7 +10847,7 @@ declare module "factorio:runtime" {
10759
10847
  * - `"name"`: {@link NamePrePlatformMinedEntityEventFilter}
10760
10848
  * - `"ghost_type"`: {@link GhostTypePrePlatformMinedEntityEventFilter}
10761
10849
  * - `"ghost_name"`: {@link GhostNamePrePlatformMinedEntityEventFilter}
10762
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaPrePlatformMinedEntityEventFilter.html Online documentation}
10850
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaPrePlatformMinedEntityEventFilter.html Online documentation}
10763
10851
  */
10764
10852
  export type LuaPrePlatformMinedEntityEventFilter =
10765
10853
  | TypePrePlatformMinedEntityEventFilter
@@ -10864,7 +10952,7 @@ declare module "factorio:runtime" {
10864
10952
  * - `"name"`: {@link NameEntityClonedEventFilter}
10865
10953
  * - `"ghost_type"`: {@link GhostTypeEntityClonedEventFilter}
10866
10954
  * - `"ghost_name"`: {@link GhostNameEntityClonedEventFilter}
10867
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaEntityClonedEventFilter.html Online documentation}
10955
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaEntityClonedEventFilter.html Online documentation}
10868
10956
  */
10869
10957
  export type LuaEntityClonedEventFilter =
10870
10958
  | TypeEntityClonedEventFilter
@@ -10969,7 +11057,7 @@ declare module "factorio:runtime" {
10969
11057
  * - `"name"`: {@link NamePlayerRepairedEntityEventFilter}
10970
11058
  * - `"ghost_type"`: {@link GhostTypePlayerRepairedEntityEventFilter}
10971
11059
  * - `"ghost_name"`: {@link GhostNamePlayerRepairedEntityEventFilter}
10972
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaPlayerRepairedEntityEventFilter.html Online documentation}
11060
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaPlayerRepairedEntityEventFilter.html Online documentation}
10973
11061
  */
10974
11062
  export type LuaPlayerRepairedEntityEventFilter =
10975
11063
  | TypePlayerRepairedEntityEventFilter
@@ -11015,7 +11103,7 @@ declare module "factorio:runtime" {
11015
11103
  *
11016
11104
  * Other attributes may be specified depending on `filter`:
11017
11105
  * - `"type"`: {@link TypePostEntityDiedEventFilter}
11018
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaPostEntityDiedEventFilter.html Online documentation}
11106
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaPostEntityDiedEventFilter.html Online documentation}
11019
11107
  */
11020
11108
  export type LuaPostEntityDiedEventFilter = TypePostEntityDiedEventFilter | OtherPostEntityDiedEventFilter
11021
11109
  /**
@@ -11115,7 +11203,7 @@ declare module "factorio:runtime" {
11115
11203
  * - `"name"`: {@link NamePreGhostDeconstructedEventFilter}
11116
11204
  * - `"ghost_type"`: {@link GhostTypePreGhostDeconstructedEventFilter}
11117
11205
  * - `"ghost_name"`: {@link GhostNamePreGhostDeconstructedEventFilter}
11118
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaPreGhostDeconstructedEventFilter.html Online documentation}
11206
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaPreGhostDeconstructedEventFilter.html Online documentation}
11119
11207
  */
11120
11208
  export type LuaPreGhostDeconstructedEventFilter =
11121
11209
  | TypePreGhostDeconstructedEventFilter
@@ -11220,7 +11308,7 @@ declare module "factorio:runtime" {
11220
11308
  * - `"name"`: {@link NamePlayerMinedEntityEventFilter}
11221
11309
  * - `"ghost_type"`: {@link GhostTypePlayerMinedEntityEventFilter}
11222
11310
  * - `"ghost_name"`: {@link GhostNamePlayerMinedEntityEventFilter}
11223
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaPlayerMinedEntityEventFilter.html Online documentation}
11311
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaPlayerMinedEntityEventFilter.html Online documentation}
11224
11312
  */
11225
11313
  export type LuaPlayerMinedEntityEventFilter =
11226
11314
  | TypePlayerMinedEntityEventFilter
@@ -11325,7 +11413,7 @@ declare module "factorio:runtime" {
11325
11413
  * - `"name"`: {@link NameSectorScannedEventFilter}
11326
11414
  * - `"ghost_type"`: {@link GhostTypeSectorScannedEventFilter}
11327
11415
  * - `"ghost_name"`: {@link GhostNameSectorScannedEventFilter}
11328
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaSectorScannedEventFilter.html Online documentation}
11416
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaSectorScannedEventFilter.html Online documentation}
11329
11417
  */
11330
11418
  export type LuaSectorScannedEventFilter =
11331
11419
  | TypeSectorScannedEventFilter
@@ -11430,7 +11518,7 @@ declare module "factorio:runtime" {
11430
11518
  * - `"name"`: {@link NameRobotMinedEntityEventFilter}
11431
11519
  * - `"ghost_type"`: {@link GhostTypeRobotMinedEntityEventFilter}
11432
11520
  * - `"ghost_name"`: {@link GhostNameRobotMinedEntityEventFilter}
11433
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaRobotMinedEntityEventFilter.html Online documentation}
11521
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaRobotMinedEntityEventFilter.html Online documentation}
11434
11522
  */
11435
11523
  export type LuaRobotMinedEntityEventFilter =
11436
11524
  | TypeRobotMinedEntityEventFilter
@@ -11537,7 +11625,7 @@ declare module "factorio:runtime" {
11537
11625
  * - `"name"`: {@link NameEntityMarkedForDeconstructionEventFilter}
11538
11626
  * - `"ghost_type"`: {@link GhostTypeEntityMarkedForDeconstructionEventFilter}
11539
11627
  * - `"ghost_name"`: {@link GhostNameEntityMarkedForDeconstructionEventFilter}
11540
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaEntityMarkedForDeconstructionEventFilter.html Online documentation}
11628
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaEntityMarkedForDeconstructionEventFilter.html Online documentation}
11541
11629
  */
11542
11630
  export type LuaEntityMarkedForDeconstructionEventFilter =
11543
11631
  | TypeEntityMarkedForDeconstructionEventFilter
@@ -11642,7 +11730,7 @@ declare module "factorio:runtime" {
11642
11730
  * - `"name"`: {@link NameScriptRaisedReviveEventFilter}
11643
11731
  * - `"ghost_type"`: {@link GhostTypeScriptRaisedReviveEventFilter}
11644
11732
  * - `"ghost_name"`: {@link GhostNameScriptRaisedReviveEventFilter}
11645
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaScriptRaisedReviveEventFilter.html Online documentation}
11733
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaScriptRaisedReviveEventFilter.html Online documentation}
11646
11734
  */
11647
11735
  export type LuaScriptRaisedReviveEventFilter =
11648
11736
  | TypeScriptRaisedReviveEventFilter
@@ -11759,7 +11847,7 @@ declare module "factorio:runtime" {
11759
11847
  * - `"ghost_type"`: {@link GhostTypePlayerBuiltEntityEventFilter}
11760
11848
  * - `"ghost_name"`: {@link GhostNamePlayerBuiltEntityEventFilter}
11761
11849
  * - `"force"`: {@link ForcePlayerBuiltEntityEventFilter}
11762
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaPlayerBuiltEntityEventFilter.html Online documentation}
11850
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaPlayerBuiltEntityEventFilter.html Online documentation}
11763
11851
  */
11764
11852
  export type LuaPlayerBuiltEntityEventFilter =
11765
11853
  | TypePlayerBuiltEntityEventFilter
@@ -11865,7 +11953,7 @@ declare module "factorio:runtime" {
11865
11953
  * - `"name"`: {@link NameUpgradeCancelledEventFilter}
11866
11954
  * - `"ghost_type"`: {@link GhostTypeUpgradeCancelledEventFilter}
11867
11955
  * - `"ghost_name"`: {@link GhostNameUpgradeCancelledEventFilter}
11868
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaUpgradeCancelledEventFilter.html Online documentation}
11956
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaUpgradeCancelledEventFilter.html Online documentation}
11869
11957
  */
11870
11958
  export type LuaUpgradeCancelledEventFilter =
11871
11959
  | TypeUpgradeCancelledEventFilter
@@ -12045,7 +12133,7 @@ declare module "factorio:runtime" {
12045
12133
  * - `"final-damage-amount"`: {@link FinalDamageAmountEntityDamagedEventFilter}
12046
12134
  * - `"damage-type"`: {@link DamageTypeEntityDamagedEventFilter}
12047
12135
  * - `"final-health"`: {@link FinalHealthEntityDamagedEventFilter}
12048
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaEntityDamagedEventFilter.html Online documentation}
12136
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaEntityDamagedEventFilter.html Online documentation}
12049
12137
  */
12050
12138
  export type LuaEntityDamagedEventFilter =
12051
12139
  | TypeEntityDamagedEventFilter
@@ -12059,7 +12147,7 @@ declare module "factorio:runtime" {
12059
12147
  | OtherEntityDamagedEventFilter
12060
12148
  /**
12061
12149
  * Write form of {@link LuaEntityDamagedEventFilter}, where some properties allow additional values as input compared to the read form.
12062
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaEntityDamagedEventFilter.html Online documentation}
12150
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaEntityDamagedEventFilter.html Online documentation}
12063
12151
  */
12064
12152
  export type LuaEntityDamagedEventFilterWrite =
12065
12153
  | TypeEntityDamagedEventFilter
@@ -12168,7 +12256,7 @@ declare module "factorio:runtime" {
12168
12256
  * - `"name"`: {@link NameEntityDiedEventFilter}
12169
12257
  * - `"ghost_type"`: {@link GhostTypeEntityDiedEventFilter}
12170
12258
  * - `"ghost_name"`: {@link GhostNameEntityDiedEventFilter}
12171
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaEntityDiedEventFilter.html Online documentation}
12259
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaEntityDiedEventFilter.html Online documentation}
12172
12260
  */
12173
12261
  export type LuaEntityDiedEventFilter =
12174
12262
  | TypeEntityDiedEventFilter
@@ -12273,7 +12361,7 @@ declare module "factorio:runtime" {
12273
12361
  * - `"name"`: {@link NameEntityMarkedForUpgradeEventFilter}
12274
12362
  * - `"ghost_type"`: {@link GhostTypeEntityMarkedForUpgradeEventFilter}
12275
12363
  * - `"ghost_name"`: {@link GhostNameEntityMarkedForUpgradeEventFilter}
12276
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaEntityMarkedForUpgradeEventFilter.html Online documentation}
12364
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaEntityMarkedForUpgradeEventFilter.html Online documentation}
12277
12365
  */
12278
12366
  export type LuaEntityMarkedForUpgradeEventFilter =
12279
12367
  | TypeEntityMarkedForUpgradeEventFilter
@@ -12378,7 +12466,7 @@ declare module "factorio:runtime" {
12378
12466
  * - `"name"`: {@link NameScriptRaisedDestroyEventFilter}
12379
12467
  * - `"ghost_type"`: {@link GhostTypeScriptRaisedDestroyEventFilter}
12380
12468
  * - `"ghost_name"`: {@link GhostNameScriptRaisedDestroyEventFilter}
12381
- * @see {@link https://lua-api.factorio.com/2.0.44/concepts/LuaScriptRaisedDestroyEventFilter.html Online documentation}
12469
+ * @see {@link https://lua-api.factorio.com/2.0.47/concepts/LuaScriptRaisedDestroyEventFilter.html Online documentation}
12382
12470
  */
12383
12471
  export type LuaScriptRaisedDestroyEventFilter =
12384
12472
  | TypeScriptRaisedDestroyEventFilter