@rbxts/types 1.0.691 → 1.0.693

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.
@@ -79,6 +79,7 @@ interface Instance {
79
79
  readonly _nominal_Instance: unique symbol;
80
80
  /**
81
81
  * This property used to protect objects in the [CoreGui](https://developer.roblox.com/en-us/api-reference/class/CoreGui) service from being altered by users in an unauthorized manner. It has been deprecated and does not do anything.
82
+ *
82
83
  * Tags: Hidden
83
84
  */
84
85
  RobloxLocked: boolean;
@@ -91,6 +92,7 @@ interface Instance {
91
92
  * * This item is protected. Attempting to use it in a [Script](https://developer.roblox.com/en-us/api-reference/class/Script) or [LocalScript](https://developer.roblox.com/en-us/api-reference/class/LocalScript) will cause an error
92
93
  * * A debug ID is an ID used in debugging processes. It allows a debugger to read each instruction before an application processes it. All objects in Roblox act like processes and each run instructions (or 'code') that can be debugged if needed
93
94
  * * This can be helpful for plugins which need to distinguish similar objects from one-another (such as objects that share the same name)
95
+ *
94
96
  * Tags: NotBrowsable
95
97
  */
96
98
  GetDebugId(this: Instance, scopeLength?: number): string;
@@ -107,6 +109,7 @@ interface KeyframeSequence extends AnimationClip {
107
109
  readonly _nominal_KeyframeSequence: unique symbol;
108
110
  /**
109
111
  * Contains the hip height of the [Humanoid](https://developer.roblox.com/en-us/api-reference/class/Humanoid) of the model that was used to author this [KeyframeSequence](https://developer.roblox.com/en-us/api-reference/class/KeyframeSequence). Default value is 1.35 since that is the hip height set for a standard R15 [character](https://developer.roblox.com/en-us/api-reference/class/Character).
112
+ *
110
113
  * Tags: Hidden
111
114
  */
112
115
  AuthoredHipHeight: number;
@@ -122,13 +125,11 @@ interface AnimationClipProvider extends Instance {
122
125
  */
123
126
  readonly _nominal_AnimationClipProvider: unique symbol;
124
127
  /**
125
- * Tags: Deprecated, [object Object]
126
- * @deprecated
128
+ * @deprecated Use `GetAnimationClipAsync` instead
127
129
  */
128
130
  GetAnimationClip(this: AnimationClipProvider, assetId: string): AnimationClip;
129
131
  /**
130
- * Tags: Deprecated, [object Object]
131
- * @deprecated
132
+ * @deprecated Use `GetAnimationClipAsync` instead
132
133
  */
133
134
  GetAnimationClipById(this: AnimationClipProvider, assetId: number, useCache: boolean): AnimationClip;
134
135
  }
@@ -171,7 +172,8 @@ interface CoreGui extends BasePlayerGui {
171
172
  readonly _nominal_CoreGui: unique symbol;
172
173
  /**
173
174
  * The current version of the CoreGui. Everytime the CoreGui is majorly changed, this number is increased.
174
- * Tags: ReadOnly, NotReplicated
175
+ *
176
+ * Tags: NotReplicated
175
177
  */
176
178
  readonly Version: number;
177
179
  }
@@ -187,6 +189,7 @@ interface StarterGui extends BasePlayerGui {
187
189
  readonly _nominal_StarterGui: unique symbol;
188
190
  /**
189
191
  * Allows the StarterGui service to process input like [PlayerGui](https://developer.roblox.com/en-us/api-reference/class/PlayerGui) and [CoreGui](https://developer.roblox.com/en-us/api-reference/class/CoreGui) do. The default value is false.
192
+ *
190
193
  * Tags: Hidden, NotReplicated
191
194
  */
192
195
  ProcessUserInput: boolean;
@@ -196,6 +199,123 @@ interface StarterGui extends BasePlayerGui {
196
199
  ShowDevelopmentGui: boolean;
197
200
  }
198
201
 
202
+ interface BaseWrap extends Instance {
203
+ /**
204
+ * **DO NOT USE!**
205
+ *
206
+ * This field exists to force TypeScript to recognize this as a nominal type
207
+ * @hidden
208
+ * @deprecated
209
+ */
210
+ readonly _nominal_BaseWrap: unique symbol;
211
+ /**
212
+ * This property is set up automatically by the Avatar Importer plugin.
213
+ *
214
+ * Asset ID for cage mesh.
215
+ */
216
+ CageMeshId: string;
217
+ /**
218
+ * This property is set up automatically by the Avatar Importer plugin.
219
+ *
220
+ * Cage mesh offset relative to parent [MeshPart](https://developer.roblox.com/en-us/api-reference/class/MeshPart).
221
+ */
222
+ CageOrigin: CFrame;
223
+ /**
224
+ * This property is set up automatically by the Avatar Importer plugin.
225
+ *
226
+ * Describes where a global zero was while authoring the cage mesh in an asset creation tool such as Blender or Maya. This property is not used by the deformer but it is useful for tools/aligning scripts, for example aligning two parts by matching their pivots as follows:
227
+ *
228
+ * local function alignWraps()
229
+ * local selectionService = game:GetService("Selection")
230
+ * local selectedObjects = selectionService:Get()
231
+ * local alignObjects = {}
232
+ * for \_, obj in pairs(selectedObjects) do
233
+ * if obj:IsA("BaseWrap") then
234
+ * --print("Wrap: " .. obj.Name)
235
+ * table.insert(alignObjects, obj)
236
+ * else
237
+ * print("Ignore: " .. obj.Name)
238
+ * end
239
+ * end
240
+ *
241
+ * if #alignObjects < 2 then
242
+ * warn("You need to select at least two wraps")
243
+ * return
244
+ * end
245
+ *
246
+ * local anchorWrap = alignObjects\[1\]
247
+ * local worldA\_from\_Wrap = anchorWrap.ImportOriginWorld
248
+ * print("Anchor: " .. anchorWrap.Name)
249
+ * for i = 2, #alignObjects do
250
+ * local wrapToAlign = alignObjects\[i\]
251
+ * print("Align: " .. wrapToAlign.Name)
252
+ * local wrap\_from\_WorldB = wrapToAlign.ImportOriginWorld:Inverse()
253
+ * local worldA\_from\_WorldB = worldA\_from\_Wrap \* wrap\_from\_WorldB
254
+ * local worldB = wrapToAlign.Parent.CFrame
255
+ * -- Note: adjust CFrame of the parent part
256
+ * wrapToAlign.Parent.CFrame = (worldB\_from\_WorldB \* worldB)
257
+ * end
258
+ * end
259
+ */
260
+ ImportOrigin: CFrame;
261
+ }
262
+
263
+ interface WrapLayer extends BaseWrap {
264
+ /**
265
+ * **DO NOT USE!**
266
+ *
267
+ * This field exists to force TypeScript to recognize this as a nominal type
268
+ * @hidden
269
+ * @deprecated
270
+ */
271
+ readonly _nominal_WrapLayer: unique symbol;
272
+ /**
273
+ * This property is intended for fine-tuning purposes and is highly optional.
274
+ *
275
+ * [CFrame](https://developer.roblox.com/en-us/api-reference/datatype/CFrame) to adjust a binding point for a clothing item mesh. Allows for fine-tuning of clothing items (slight adjustment of position/rotation to get a unique look) in contexts such as community-made avatar editors.
276
+ */
277
+ BindOffset: CFrame;
278
+ /**
279
+ * AssetID for reference mesh used to define Inner Cage of a 3D object
280
+ *
281
+ * Reference mesh is used to define standard topology and UV coordinates for index matching. It is expected that for all catalog avatars, this will point to one of 15 standard reference meshes provided by Roblox. But for some NPCs or a custom avatar system, this might point to other meshes.
282
+ *
283
+ * Note: this property is set up automatically by the FBX importer
284
+ */
285
+ ReferenceMeshId: string;
286
+ /**
287
+ * Reference mesh offset relative to parent MeshPart (in the parent MeshPart space)
288
+ *
289
+ * Note: this property is set up automatically by the FBX importer
290
+ */
291
+ ReferenceOrigin: CFrame;
292
+ /**
293
+ * This property is intended for fine-tuning purposes and is highly optional.
294
+ *
295
+ * Allows slight shrinking/expanding of the resulting render mesh, without affecting any other layers. This is useful in rare cases when the clothing mesh does not precisely fit the underlying clothing layers (the cage is usually slightly overestimated atop the real shape to avoid layer interpenetration). Even slight overestimation has the tendency to accumulate, especially when there are a lot of layers. While this is usually not critical, some items like backpacks may be problematic.
296
+ *
297
+ * Valid range is -1 to 1. A value of -1 will maximally expand while a value of 1 will maximally shrink. A value of 0 (default) has no effect.
298
+ */
299
+ ShrinkFactor: number;
300
+ }
301
+
302
+ interface WrapTarget extends BaseWrap {
303
+ /**
304
+ * **DO NOT USE!**
305
+ *
306
+ * This field exists to force TypeScript to recognize this as a nominal type
307
+ * @hidden
308
+ * @deprecated
309
+ */
310
+ readonly _nominal_WrapTarget: unique symbol;
311
+ /**
312
+ * Defines how much the body mesh can be compressed by clothing. Super tight clothing may lead to an intersection between the clothing mesh and body mesh. To solve this visual artifact, the deformer can compress the body mesh slightly to solve possible intersections.
313
+ *
314
+ * Valid range is 0 to 1. A value of 0 will compress the body mesh as much as necessary to ensure that the intersections are eliminated (visible body parts might look a little bit deformed). A value of 1 will prevent the body mesh from being compressed (may lead to visible intersections or Z-fighting). A value of 0.9 (default) is a reasonable default that solves most of the intersections without introducing any significant body deformation.
315
+ */
316
+ Stiffness: number;
317
+ }
318
+
199
319
  /** The ChangeHistoryService provides a way for plugins to undo and redo changes and to create waypoints when changes are made to the place. */
200
320
  interface ChangeHistoryService extends Instance {
201
321
  /**
@@ -267,12 +387,14 @@ interface DebugSettings extends Instance {
267
387
  readonly _nominal_DebugSettings: unique symbol;
268
388
  /**
269
389
  * Describes whether a [DataModel](https://developer.roblox.com/en-us/api-reference/class/DataModel) is actively in memory, as an integer (where 1 = true, and 0 = false).
270
- * Tags: ReadOnly, NotReplicated
390
+ *
391
+ * Tags: NotReplicated
271
392
  */
272
393
  readonly DataModel: number;
273
394
  /**
274
395
  * The number of instances active in the simulation.
275
- * Tags: ReadOnly, NotReplicated
396
+ *
397
+ * Tags: NotReplicated
276
398
  */
277
399
  readonly InstanceCount: number;
278
400
  /**
@@ -281,12 +403,14 @@ interface DebugSettings extends Instance {
281
403
  IsScriptStackTracingEnabled: boolean;
282
404
  /**
283
405
  * Returns the number of internal DataModel jobs actively being processed.
284
- * Tags: ReadOnly, NotReplicated
406
+ *
407
+ * Tags: NotReplicated
285
408
  */
286
409
  readonly JobCount: number;
287
410
  /**
288
411
  * The number of players currently in the active game-instance.
289
- * Tags: ReadOnly, NotReplicated
412
+ *
413
+ * Tags: NotReplicated
290
414
  */
291
415
  readonly PlayerCount: number;
292
416
  /**
@@ -295,7 +419,8 @@ interface DebugSettings extends Instance {
295
419
  ReportSoundWarnings: boolean;
296
420
  /**
297
421
  * The current client version of Roblox. Can also be retrieved by using the version() function.
298
- * Tags: ReadOnly, NotReplicated
422
+ *
423
+ * Tags: NotReplicated
299
424
  */
300
425
  readonly RobloxVersion: string;
301
426
  /**
@@ -331,7 +456,8 @@ interface DebuggerBreakpoint extends Instance {
331
456
  IsEnabled: boolean;
332
457
  /**
333
458
  * The line that the breakpoint has been placed on.
334
- * Tags: ReadOnly, NotReplicated
459
+ *
460
+ * Tags: NotReplicated
335
461
  */
336
462
  readonly Line: number;
337
463
  /**
@@ -360,7 +486,8 @@ interface DebuggerManager extends Instance {
360
486
  readonly _nominal_DebuggerManager: unique symbol;
361
487
  /**
362
488
  * Whether the debugger is enabled or disabled.
363
- * Tags: ReadOnly, NotReplicated
489
+ *
490
+ * Tags: NotReplicated
364
491
  */
365
492
  readonly DebuggingEnabled: boolean;
366
493
  /**
@@ -377,19 +504,16 @@ interface DebuggerManager extends Instance {
377
504
  Resume(this: DebuggerManager): void;
378
505
  /**
379
506
  * Performs a [step into](https://developer.roblox.com/articles/Lua-debugger "Lua Debugger") operation on the Lua Debugger.
380
- * Tags: Deprecated
381
507
  * @deprecated
382
508
  */
383
509
  StepIn(this: DebuggerManager): void;
384
510
  /**
385
511
  * Performs a [step out](https://developer.roblox.com/articles/Lua-debugger "Lua Debugger") operation on the Lua Debugger.
386
- * Tags: Deprecated
387
512
  * @deprecated
388
513
  */
389
514
  StepOut(this: DebuggerManager): void;
390
515
  /**
391
516
  * Performs a [step over](https://developer.roblox.com/articles/Lua-debugger "Lua Debugger") operation on the Lua Debugger.
392
- * Tags: Deprecated
393
517
  * @deprecated
394
518
  */
395
519
  StepOver(this: DebuggerManager): void;
@@ -432,51 +556,61 @@ interface FaceControls extends Instance {
432
556
  readonly _nominal_FaceControls: unique symbol;
433
557
  /**
434
558
  * Raises the chin up; moves the lower lip upwards
559
+ *
435
560
  * Tags: NotReplicated
436
561
  */
437
562
  ChinRaiser: number;
438
563
  /**
439
564
  * Moves the upper lip when ChinRaiser is engaged and touching the upper lip
565
+ *
440
566
  * Tags: NotReplicated
441
567
  */
442
568
  ChinRaiserUpperLip: number;
443
569
  /**
444
570
  * Brings the left and right brows inward together
571
+ *
445
572
  * Tags: NotReplicated
446
573
  */
447
574
  Corrugator: number;
448
575
  /**
449
576
  * Moves gaze down
577
+ *
450
578
  * Tags: NotReplicated
451
579
  */
452
580
  EyesLookDown: number;
453
581
  /**
454
582
  * Moves gaze left
583
+ *
455
584
  * Tags: NotReplicated
456
585
  */
457
586
  EyesLookLeft: number;
458
587
  /**
459
588
  * Moves gaze right
589
+ *
460
590
  * Tags: NotReplicated
461
591
  */
462
592
  EyesLookRight: number;
463
593
  /**
464
594
  * Moves gaze up
595
+ *
465
596
  * Tags: NotReplicated
466
597
  */
467
598
  EyesLookUp: number;
468
599
  /**
469
600
  * Also known as lip tightener; brings the corners of the mouth inward and pressing the lips back against the teeth
601
+ *
470
602
  * Tags: NotReplicated
471
603
  */
472
604
  FlatPucker: number;
473
605
  /**
474
606
  * Makes a 'O' shape with the mouth
607
+ *
475
608
  * Tags: NotReplicated
476
609
  */
477
610
  Funneler: number;
478
611
  /**
479
612
  * Lowers the jaw downward opening the mouth
613
+ *
480
614
  * Tags: NotReplicated
481
615
  */
482
616
  JawDrop: number;
@@ -486,196 +620,235 @@ interface FaceControls extends Instance {
486
620
  JawLeft: number;
487
621
  /**
488
622
  * Moves mouth and jaw to the right (character right)
623
+ *
489
624
  * Tags: NotReplicated
490
625
  */
491
626
  JawRight: number;
492
627
  /**
493
628
  * Lowers the left brow down
629
+ *
494
630
  * Tags: NotReplicated
495
631
  */
496
632
  LeftBrowLowerer: number;
497
633
  /**
498
634
  * Puffs up the left cheek
635
+ *
499
636
  * Tags: NotReplicated
500
637
  */
501
638
  LeftCheekPuff: number;
502
639
  /**
503
640
  * Squints the left eye
641
+ *
504
642
  * Tags: NotReplicated
505
643
  */
506
644
  LeftCheekRaiser: number;
507
645
  /**
508
646
  * Moves the corners of the mouth back in Z
647
+ *
509
648
  * Tags: NotReplicated
510
649
  */
511
650
  LeftDimpler: number;
512
651
  /**
513
652
  * Closes the left eyelid
653
+ *
514
654
  * Tags: NotReplicated
515
655
  */
516
656
  LeftEyeClosed: number;
517
657
  /**
518
658
  * Raises the left eyelid upwards to reveal more of the eye white above the iris
659
+ *
519
660
  * Tags: NotReplicated
520
661
  */
521
662
  LeftEyeUpperLidRaiser: number;
522
663
  /**
523
664
  * Raises the interior half of the left brow upwards
665
+ *
524
666
  * Tags: NotReplicated
525
667
  */
526
668
  LeftInnerBrowRaiser: number;
527
669
  /**
528
670
  * Lowers the corners of the mouth downwards in a frown
671
+ *
529
672
  * Tags: NotReplicated
530
673
  */
531
674
  LeftLipCornerDown: number;
532
675
  /**
533
676
  * Raises the corners of the mouth upwards in a smile
677
+ *
534
678
  * Tags: NotReplicated
535
679
  */
536
680
  LeftLipCornerPuller: number;
537
681
  /**
538
682
  * Stretches the corners of the mouth apart
683
+ *
539
684
  * Tags: NotReplicated
540
685
  */
541
686
  LeftLipStretcher: number;
542
687
  /**
543
688
  * Lowers the lower lip down away from the upper lip revealing the lower teeth
689
+ *
544
690
  * Tags: NotReplicated
545
691
  */
546
692
  LeftLowerLipDepressor: number;
547
693
  /**
548
694
  * Raise the left nostril, pulls the brow down slightly, and wrinkles on the side of the nose
695
+ *
549
696
  * Tags: NotReplicated
550
697
  */
551
698
  LeftNoseWrinkler: number;
552
699
  /**
553
700
  * Raises the outer part of the left brow upwards
701
+ *
554
702
  * Tags: NotReplicated
555
703
  */
556
704
  LeftOuterBrowRaiser: number;
557
705
  /**
558
706
  * Raises the left upper lip away from the lower lip revealing the upper teeth
707
+ *
559
708
  * Tags: NotReplicated
560
709
  */
561
710
  LeftUpperLipRaiser: number;
562
711
  /**
563
712
  * Presses the lips together
713
+ *
564
714
  * Tags: NotReplicated
565
715
  */
566
716
  LipPresser: number;
567
717
  /**
568
718
  * Brings the lips together relative to JawDrop
719
+ *
569
720
  * Tags: NotReplicated
570
721
  */
571
722
  LipsTogether: number;
572
723
  /**
573
724
  * Rolls the lower lip up over the teeth
725
+ *
574
726
  * Tags: NotReplicated
575
727
  */
576
728
  LowerLipSuck: number;
577
729
  /**
578
730
  * Moves the mouth left
731
+ *
579
732
  * Tags: NotReplicated
580
733
  */
581
734
  MouthLeft: number;
582
735
  /**
583
736
  * Moves the mouth right
737
+ *
584
738
  * Tags: NotReplicated
585
739
  */
586
740
  MouthRight: number;
587
741
  /**
588
742
  * Makes a kiss-like shape with the mouth
743
+ *
589
744
  * Tags: NotReplicated
590
745
  */
591
746
  Pucker: number;
592
747
  /**
593
748
  * Lowers the right brow down
749
+ *
594
750
  * Tags: NotReplicated
595
751
  */
596
752
  RightBrowLowerer: number;
597
753
  /**
598
754
  * Puffs up the right cheek
755
+ *
599
756
  * Tags: NotReplicated
600
757
  */
601
758
  RightCheekPuff: number;
602
759
  /**
603
760
  * Squints the right eye
761
+ *
604
762
  * Tags: NotReplicated
605
763
  */
606
764
  RightCheekRaiser: number;
607
765
  /**
608
766
  * Moves the corners of the mouth back in Z
767
+ *
609
768
  * Tags: NotReplicated
610
769
  */
611
770
  RightDimpler: number;
612
771
  /**
613
772
  * Closes the right eyelid
773
+ *
614
774
  * Tags: NotReplicated
615
775
  */
616
776
  RightEyeClosed: number;
617
777
  /**
618
778
  * Raises the right eyelid upwards to reveal more of the eye white above the iris
779
+ *
619
780
  * Tags: NotReplicated
620
781
  */
621
782
  RightEyeUpperLidRaiser: number;
622
783
  /**
623
784
  * Raises the interior half of the right brow upwards
785
+ *
624
786
  * Tags: NotReplicated
625
787
  */
626
788
  RightInnerBrowRaiser: number;
627
789
  /**
628
790
  * Lowers the corners of the mouth downwards in a frown
791
+ *
629
792
  * Tags: NotReplicated
630
793
  */
631
794
  RightLipCornerDown: number;
632
795
  /**
633
796
  * Raises the corners of the mouth upwards in a smile
797
+ *
634
798
  * Tags: NotReplicated
635
799
  */
636
800
  RightLipCornerPuller: number;
637
801
  /**
638
802
  * Stretches the corners of the mouth apart
803
+ *
639
804
  * Tags: NotReplicated
640
805
  */
641
806
  RightLipStretcher: number;
642
807
  /**
643
808
  * Lowers the lower lip down away from the upper lip revealing the lower teeth
809
+ *
644
810
  * Tags: NotReplicated
645
811
  */
646
812
  RightLowerLipDepressor: number;
647
813
  /**
648
814
  * Raises the right nostril, pulls the brow down slightly, and wrinkles on the side of the nose
815
+ *
649
816
  * Tags: NotReplicated
650
817
  */
651
818
  RightNoseWrinkler: number;
652
819
  /**
653
820
  * Raises the outer part of the right brow upwards
821
+ *
654
822
  * Tags: NotReplicated
655
823
  */
656
824
  RightOuterBrowRaiser: number;
657
825
  /**
658
826
  * Raises the right upper lip away from the lower lip revealing the upper teeth
827
+ *
659
828
  * Tags: NotReplicated
660
829
  */
661
830
  RightUpperLipRaiser: number;
662
831
  /**
663
832
  * Bends the tongue down
833
+ *
664
834
  * Tags: NotReplicated
665
835
  */
666
836
  TongueDown: number;
667
837
  /**
668
838
  * Extends the tip of the tongue out of the mouth
839
+ *
669
840
  * Tags: NotReplicated
670
841
  */
671
842
  TongueOut: number;
672
843
  /**
673
844
  * Bends the tongue up
845
+ *
674
846
  * Tags: NotReplicated
675
847
  */
676
848
  TongueUp: number;
677
849
  /**
678
850
  * Rolls the upper lip around the teeth
851
+ *
679
852
  * Tags: NotReplicated
680
853
  */
681
854
  UpperLipSuck: number;
@@ -698,7 +871,8 @@ interface File extends Instance {
698
871
  readonly _nominal_File: unique symbol;
699
872
  /**
700
873
  * The file size (in bytes) of the local file associated with this [File](https://developer.roblox.com/en-us/api-reference/class/File).
701
- * Tags: Hidden, ReadOnly, NotReplicated
874
+ *
875
+ * Tags: Hidden, NotReplicated
702
876
  */
703
877
  readonly Size: number;
704
878
  /**
@@ -888,6 +1062,49 @@ interface QWidgetPluginGui extends PluginGui {
888
1062
  readonly _nominal_QWidgetPluginGui: unique symbol;
889
1063
  }
890
1064
 
1065
+ interface Humanoid extends Instance {
1066
+ /**
1067
+ * **DO NOT USE!**
1068
+ *
1069
+ * This field exists to force TypeScript to recognize this as a nominal type
1070
+ * @hidden
1071
+ * @deprecated
1072
+ */
1073
+ readonly _nominal_Humanoid: unique symbol;
1074
+ /**
1075
+ * This property selects the [HumanoidCollisionType](https://developer.roblox.com/en-us/api-reference/enum/HumanoidCollisionType) for R15 and Rthro non-player characters.
1076
+ *
1077
+ * The collision geometry for the InnerBox type is calculated at run-time and will not be applied in Studio when the simulation is not running.
1078
+ *
1079
+ * For player [Characters](https://developer.roblox.com/en-us/api-reference/property/Player/Character) the CollisionType property will be decided by the Avatar Collision Option in Game Settings.
1080
+ *
1081
+ * ![Collision Options in Game Settings](https://developer.roblox.com/assets/blt609585adde792b19/HumanoidCollisionType.jpg)
1082
+ *
1083
+ * This property is writable by [Plugins](https://developer.roblox.com/en-us/api-reference/class/Plugin) and can be read by all scripts.
1084
+ *
1085
+ * ### Enums
1086
+ *
1087
+ * Name
1088
+ *
1089
+ * Value
1090
+ *
1091
+ * Description
1092
+ *
1093
+ * ### OuterBox
1094
+ *
1095
+ * 0
1096
+ *
1097
+ * Dynamically sized collision boxes based on mesh sizes
1098
+ *
1099
+ * ### Innerbox
1100
+ *
1101
+ * 1
1102
+ *
1103
+ * Fixed size collision boxes, similar to the classic avatar collision
1104
+ */
1105
+ CollisionType: Enum.HumanoidCollisionType;
1106
+ }
1107
+
891
1108
  interface InsertService extends Instance {
892
1109
  /**
893
1110
  * **DO NOT USE!**
@@ -914,14 +1131,12 @@ interface KeyframeSequenceProvider extends Instance {
914
1131
  readonly _nominal_KeyframeSequenceProvider: unique symbol;
915
1132
  /**
916
1133
  * Returns a [KeyframeSequence](https://developer.roblox.com/en-us/api-reference/class/KeyframeSequence) from a given asset URL.
917
- * Tags: Deprecated, [object Object]
918
- * @deprecated
1134
+ * @deprecated Use `GetKeyframeSequenceAsync` instead
919
1135
  */
920
1136
  GetKeyframeSequence(this: KeyframeSequenceProvider, assetId: string): Instance | undefined;
921
1137
  /**
922
1138
  * Returns a [KeyframeSequence](https://developer.roblox.com/en-us/api-reference/class/KeyframeSequence) from the supplied assetId. Can optionally cache to reduce unnecessary loading freezes.
923
- * Tags: Deprecated, [object Object]
924
- * @deprecated
1139
+ * @deprecated Use `GetKeyframeSequenceAsync` instead
925
1140
  */
926
1141
  GetKeyframeSequenceById(this: KeyframeSequenceProvider, assetId: number, useCache: boolean): Instance | undefined;
927
1142
  }
@@ -955,6 +1170,18 @@ interface LuaSourceContainer extends Instance {
955
1170
  RuntimeSource: string;
956
1171
  }
957
1172
 
1173
+ interface BaseScript extends LuaSourceContainer {
1174
+ /**
1175
+ * **DO NOT USE!**
1176
+ *
1177
+ * This field exists to force TypeScript to recognize this as a nominal type
1178
+ * @hidden
1179
+ * @deprecated
1180
+ */
1181
+ readonly _nominal_BaseScript: unique symbol;
1182
+ RunContext: Enum.RunContext;
1183
+ }
1184
+
958
1185
  interface Script extends BaseScript {
959
1186
  /**
960
1187
  * **DO NOT USE!**
@@ -1156,7 +1383,8 @@ interface NetworkSettings extends Instance {
1156
1383
  /**
1157
1384
  * FreeMemoryMBytes is a read-only property that describes how much free memory is available, in MBs.
1158
1385
  * It is stored as a floating point number, so it can be be read down at the level of available bytes by multiplying its value by `1024 * 1024`.
1159
- * Tags: Hidden, ReadOnly, NotReplicated
1386
+ *
1387
+ * Tags: Hidden, NotReplicated
1160
1388
  */
1161
1389
  readonly FreeMemoryMBytes: number;
1162
1390
  readonly HttpProxyEnabled: boolean;
@@ -1242,12 +1470,119 @@ interface Terrain extends BasePart {
1242
1470
  * Transforms the legacy terrain engine into the new terrain engine.
1243
1471
  *
1244
1472
  * All places now automatically use the new terrain engine, so this method is obsolete.
1245
- * Tags: Deprecated
1246
1473
  * @deprecated
1247
1474
  */
1248
1475
  ConvertToSmooth(this: Terrain): void;
1249
1476
  }
1250
1477
 
1478
+ interface TriangleMeshPart extends BasePart {
1479
+ /**
1480
+ * **DO NOT USE!**
1481
+ *
1482
+ * This field exists to force TypeScript to recognize this as a nominal type
1483
+ * @hidden
1484
+ * @deprecated
1485
+ */
1486
+ readonly _nominal_TriangleMeshPart: unique symbol;
1487
+ /**
1488
+ * This property determines how the collision model of the [TriangleMeshPart](https://developer.roblox.com/en-us/api-reference/class/TriangleMeshPart) relates to the actual geometry of the mesh. In situations where the collision model of a mesh is unimportant or precision isn't necessary, it is a good idea to set CollisionFidelity to 'Box' to improve performance.
1489
+ *
1490
+ * This property cannot be read or manipulated by scripts during run time.
1491
+ *
1492
+ * How CollisionFidelity Works
1493
+ * ---------------------------
1494
+ *
1495
+ * [CollisionFidelity](https://developer.roblox.com/en-us/api-reference/enum/CollisionFidelity) has three options, the results of which are demonstrated in the image below.
1496
+ *
1497
+ * ![Collision Fidelity](https://developer.roblox.com/assets/blt3ff26427f15a0e74/CollisionFidelity.png)
1498
+ *
1499
+ * A visual representation of a [MeshPart](https://developer.roblox.com/en-us/api-reference/class/MeshPart)s collision model can be viewed by enabling [PhysicsSettings.ShowDecompositionGeometry](https://developer.roblox.com/en-us/api-reference/property/PhysicsSettings/ShowDecompositionGeometry) in Roblox Studio's Settings.
1500
+ *
1501
+ * Tags: NotReplicated
1502
+ */
1503
+ CollisionFidelity: Enum.CollisionFidelity;
1504
+ }
1505
+
1506
+ interface MeshPart extends TriangleMeshPart {
1507
+ /**
1508
+ * **DO NOT USE!**
1509
+ *
1510
+ * This field exists to force TypeScript to recognize this as a nominal type
1511
+ * @hidden
1512
+ * @deprecated
1513
+ */
1514
+ readonly _nominal_MeshPart: unique symbol;
1515
+ /**
1516
+ * This property determines whether to render both faces or polygons in the mesh. It is only changeable in Studio. This is useful for meshes that are typically modeled as cards such as a leaf, hair and cloth.
1517
+ *
1518
+ * Example:
1519
+ * _The tree leaves are modeled with single sided cards._
1520
+ * ![Leaves as cards](https://developer.roblox.com/assets/blt32ec4b040982f44d/MeshPartsAsCards.png)
1521
+ *
1522
+ * _With MeshPart.DoubleSided disabled some leaves are missing since they are back facing the camera._
1523
+ * ![DoubleSided property disabled](https://developer.roblox.com/assets/blt1955400aa4d9d8d9/DoubleSidedOff.png)
1524
+ *
1525
+ * _With MeshPart.DoubleSided enabled, both faces of the leaves are rendered._
1526
+ * ![DoubleSided property enabled](https://developer.roblox.com/assets/blte8ab39d69cf97247/DoubleSidedOn.png)
1527
+ */
1528
+ DoubleSided: boolean;
1529
+ /**
1530
+ * This property determines the level of detail that solid-modeled and mesh parts will be shown in and can be set to the possible values of the [RenderFidelity](https://developer.roblox.com/en-us/api-reference/enum/RenderFidelity) enum.
1531
+ *
1532
+ * By default, solid-modeled and mesh parts will always be shown in precise fidelity, no matter how far they are from the game camera. This improves their appearance when viewed from any distance, but if a place has a large number of detailed solid-modeled or mesh parts, it may reduce overall game performance.
1533
+ *
1534
+ * Distance From Camera
1535
+ *
1536
+ * Render Fidelity
1537
+ *
1538
+ * Less than 250 studs
1539
+ *
1540
+ * Highest
1541
+ *
1542
+ * 250-500 studs
1543
+ *
1544
+ * Medium
1545
+ *
1546
+ * 500 or more studs
1547
+ *
1548
+ * Lowest
1549
+ *
1550
+ * See also
1551
+ * --------
1552
+ *
1553
+ * * [Improving Performance](https://developer.roblox.com/en-us/articles/improving-performance), an article discussing tips for analyzing and improving game performance
1554
+ *
1555
+ * Tags: NotReplicated
1556
+ */
1557
+ RenderFidelity: Enum.RenderFidelity;
1558
+ }
1559
+
1560
+ interface PartOperation extends TriangleMeshPart {
1561
+ /**
1562
+ * **DO NOT USE!**
1563
+ *
1564
+ * This field exists to force TypeScript to recognize this as a nominal type
1565
+ * @hidden
1566
+ * @deprecated
1567
+ */
1568
+ readonly _nominal_PartOperation: unique symbol;
1569
+ RenderFidelity: Enum.RenderFidelity;
1570
+ /**
1571
+ * This property represents an angle in degrees for a threshold value between face normals on a [solid modeled](https://developer.roblox.com/en-us/articles/3d-modeling-with-parts) part. If the normal difference is less than the value, normals will be adjusted to smooth the difference. Usually a value between 30 and 70 degrees will produce a good result. 0 degrees leads to sharp edges. Values between 90 and 180 degrees are allowed but not encouraged, as it may cause a “shadowing” effect on unions with sharp edges.
1572
+ *
1573
+ * Note that smoothing will not affect the normals between different materials or different colors.
1574
+ *
1575
+ * ![](https://developer.roblox.com/assets/blt53ff07ce0d5f1cf7/CSG-SmoothingAngle-0.png)
1576
+ *
1577
+ * SmoothingAngle = 0
1578
+ *
1579
+ * ![](https://developer.roblox.com/assets/bltc1f5f51600953267/CSG-SmoothingAngle-50.png)
1580
+ *
1581
+ * SmoothingAngle = 50
1582
+ */
1583
+ SmoothingAngle: number;
1584
+ }
1585
+
1251
1586
  interface Model extends PVInstance {
1252
1587
  /**
1253
1588
  * **DO NOT USE!**
@@ -1292,6 +1627,41 @@ interface Workspace extends WorldRoot {
1292
1627
  * @deprecated
1293
1628
  */
1294
1629
  readonly _nominal_Workspace: unique symbol;
1630
+ /**
1631
+ * This property determines the height at which falling [BaseParts](https://developer.roblox.com/en-us/api-reference/class/BasePart) (and their ancestor [Models](https://developer.roblox.com/en-us/api-reference/class/Model)) are destroyed.
1632
+ *
1633
+ * ![Parts being destroyed at the FallenPartsDestroyHeight](https://developer.roblox.com/assets/blt3ab195d142a5f6ee/FallenPartsDestroyHeight.gif)
1634
+ *
1635
+ * What happens to falling parts?
1636
+ * ------------------------------
1637
+ *
1638
+ * For performance reasons, Roblox automatically destroys (using [Instance:Destroy](https://developer.roblox.com/en-us/api-reference/function/Instance/Destroy)) parts that fall below this value. This is to prevent parts that have fallen off the map from continuing to fall forever.
1639
+ *
1640
+ * If a part destroyed due to this behavior is the last part in a model, then that \`model will also be destroyed. This applies to all model ancestors of the part.
1641
+ *
1642
+ * This property can be read by scripts, but can only be set by plugins, the command bar or the properties window in Roblox Studio.
1643
+ *
1644
+ * Notes
1645
+ * -----
1646
+ *
1647
+ * * Developers should also use the [Debris](https://developer.roblox.com/en-us/api-reference/class/Debris) service to clean up parts that are no longer needed, but have not fallen off the map
1648
+ * * This property is clamped between -50,000 and 50,000. This is because [BasePart](https://developer.roblox.com/en-us/api-reference/class/BasePart)s do not simulate or render properly at a great distance from the origin due to floating point inaccuracies
1649
+ */
1650
+ FallenPartsDestroyHeight: number;
1651
+ InterpolationThrottling: Enum.InterpolationThrottlingMode;
1652
+ /**
1653
+ * The **StreamingEnabled** property determines whether game content streaming is enabled for the place. This property is not scriptable and therefore must be set on the **Workspace** object in Studio.
1654
+ *
1655
+ * For a detailed explanation of game content streaming, best practices, and implementation notes, see [Game Content Streaming](https://developer.roblox.com/en-us/articles/content-streaming).
1656
+ *
1657
+ * See also
1658
+ * --------
1659
+ *
1660
+ * * [Workspace.StreamingMinRadius](https://developer.roblox.com/en-us/api-reference/property/Workspace/StreamingMinRadius)
1661
+ * * [Workspace.StreamingTargetRadius](https://developer.roblox.com/en-us/api-reference/property/Workspace/StreamingTargetRadius)
1662
+ * * [Workspace.StreamingPauseMode](https://developer.roblox.com/en-us/api-reference/property/Workspace/StreamingPauseMode)
1663
+ */
1664
+ StreamingEnabled: boolean;
1295
1665
  /**
1296
1666
  * Goes through all [BasePart](https://developer.roblox.com/en-us/api-reference/class/BasePart)s given, breaking any joints connected to these parts.
1297
1667
  *
@@ -1305,7 +1675,6 @@ interface Workspace extends WorldRoot {
1305
1675
  * workspace:BreakJoints({part1, part2, part3})
1306
1676
  *
1307
1677
  * Note, this function cannot be used by scripts and will only function in plugins.
1308
- * Tags: Deprecated
1309
1678
  * @deprecated
1310
1679
  */
1311
1680
  readonly BreakJoints: never;
@@ -1329,7 +1698,6 @@ interface Workspace extends WorldRoot {
1329
1698
  * workspace:MakeJoints({part1, part2, part3})
1330
1699
  *
1331
1700
  * Joints are broken if enough force is applied to them due to an [Explosion](https://developer.roblox.com/en-us/api-reference/class/Explosion), unless a [ForceField](https://developer.roblox.com/en-us/api-reference/class/ForceField) object is parented to the [BasePart](https://developer.roblox.com/en-us/api-reference/class/BasePart) or ancestor [Model](https://developer.roblox.com/en-us/api-reference/class/Model). For this reason, they are often used to make simple destructible buildings and other models.
1332
- * Tags: Deprecated
1333
1701
  * @deprecated
1334
1702
  */
1335
1703
  readonly MakeJoints: never;
@@ -1696,7 +2064,8 @@ interface Plugin extends Instance {
1696
2064
  readonly _nominal_Plugin: unique symbol;
1697
2065
  /**
1698
2066
  * Returns whether the user enabled _Collisions_ in studio under the Model tab.
1699
- * Tags: ReadOnly, NotReplicated
2067
+ *
2068
+ * Tags: NotReplicated
1700
2069
  */
1701
2070
  readonly CollisionEnabled: boolean;
1702
2071
  /**
@@ -1712,7 +2081,8 @@ interface Plugin extends Instance {
1712
2081
  * else -- Assume it's 1
1713
2082
  * gridsize = 1
1714
2083
  * end
1715
- * Tags: ReadOnly, NotReplicated
2084
+ *
2085
+ * Tags: NotReplicated
1716
2086
  */
1717
2087
  readonly GridSize: number;
1718
2088
  /**
@@ -1805,7 +2175,6 @@ interface Plugin extends Instance {
1805
2175
  GetSetting(this: Plugin, key: string): unknown;
1806
2176
  /**
1807
2177
  * Returns the studio user's userId if they're logged in, otherwise returns 0.
1808
- * Tags: Deprecated
1809
2178
  * @deprecated
1810
2179
  */
1811
2180
  GetStudioUserId(this: Plugin): number;
@@ -1939,6 +2308,7 @@ interface Plugin extends Instance {
1939
2308
  * --------
1940
2309
  *
1941
2310
  * * [Building Studio Widgets](https://developer.roblox.com/en-us/articles/building-studio-widgets), for more information on working with Studio widgets.
2311
+ *
1942
2312
  * Tags: Yields
1943
2313
  */
1944
2314
  CreateDockWidgetPluginGui(
@@ -1948,21 +2318,25 @@ interface Plugin extends Instance {
1948
2318
  ): DockWidgetPluginGui;
1949
2319
  /**
1950
2320
  * This function prompts the user to open a .fbx animation file that can be loaded onto the _rigModel_, then proceeds to insert the animation as a [KeyframeSequence](https://developer.roblox.com/en-us/api-reference/class/KeyframeSequence) in the [Workspace](https://developer.roblox.com/en-us/api-reference/class/Workspace).
2321
+ *
1951
2322
  * Tags: Yields
1952
2323
  */
1953
2324
  ImportFbxAnimation(this: Plugin, rigModel: Model, isR15?: boolean): Instance | undefined;
1954
2325
  /**
1955
2326
  * Prompts the user to open a .fbx file, uploads the individual components of the model as meshes, and generates a character rig for use in animation, which is loaded into the [Workspace](https://developer.roblox.com/en-us/api-reference/class/Workspace).
2327
+ *
1956
2328
  * Tags: Yields
1957
2329
  */
1958
2330
  ImportFbxRig(this: Plugin, isR15?: boolean): Model;
1959
2331
  /**
1960
2332
  * Opens a window in Roblox Studio, which prompts the user to select an asset based on the _assetType_ specified. Returns what assetId was selected, or -1 if the window was closed.
2333
+ *
1961
2334
  * Tags: Yields
1962
2335
  */
1963
2336
  PromptForExistingAssetId(this: Plugin, assetType: string): number;
1964
2337
  /**
1965
2338
  * Prompts the user to save their current selection with the specified file name. Returns true if the user did save the file.
2339
+ *
1966
2340
  * Tags: Yields
1967
2341
  */
1968
2342
  PromptSaveSelection(this: Plugin, suggestedFileName?: string): boolean;
@@ -2005,7 +2379,8 @@ interface PluginAction extends Instance {
2005
2379
  readonly _nominal_PluginAction: unique symbol;
2006
2380
  /**
2007
2381
  * A string that uniquely identifies this action. This string is the key used when saving and loading the action's state in Roblox Studio.
2008
- * Tags: ReadOnly, NotReplicated
2382
+ *
2383
+ * Tags: NotReplicated
2009
2384
  */
2010
2385
  readonly ActionId: string;
2011
2386
  /**
@@ -2015,17 +2390,20 @@ interface PluginAction extends Instance {
2015
2390
  * --------
2016
2391
  *
2017
2392
  * * `Plugin/CreationPluginAction`, creates a PluginAction
2018
- * Tags: ReadOnly, NotReplicated
2393
+ *
2394
+ * Tags: NotReplicated
2019
2395
  */
2020
2396
  readonly AllowBinding: boolean;
2021
2397
  /**
2022
2398
  * The description of the action, when viewing it from the keyboard shortcuts window in Roblox Studio.
2023
- * Tags: ReadOnly, NotReplicated
2399
+ *
2400
+ * Tags: NotReplicated
2024
2401
  */
2025
2402
  readonly StatusTip: string;
2026
2403
  /**
2027
2404
  * The text that is displayed when viewing this action in Roblox Studio.
2028
- * Tags: ReadOnly, NotReplicated
2405
+ *
2406
+ * Tags: NotReplicated
2029
2407
  */
2030
2408
  readonly Text: string;
2031
2409
  /**
@@ -2055,19 +2433,19 @@ interface PluginDragEvent extends Instance {
2055
2433
  */
2056
2434
  readonly _nominal_PluginDragEvent: unique symbol;
2057
2435
  /**
2058
- * Tags: ReadOnly, NotReplicated
2436
+ * Tags: NotReplicated
2059
2437
  */
2060
2438
  readonly Data: string;
2061
2439
  /**
2062
- * Tags: ReadOnly, NotReplicated
2440
+ * Tags: NotReplicated
2063
2441
  */
2064
2442
  readonly MimeType: string;
2065
2443
  /**
2066
- * Tags: ReadOnly, NotReplicated
2444
+ * Tags: NotReplicated
2067
2445
  */
2068
2446
  readonly Position: Vector2;
2069
2447
  /**
2070
- * Tags: ReadOnly, NotReplicated
2448
+ * Tags: NotReplicated
2071
2449
  */
2072
2450
  readonly Sender: string;
2073
2451
  }
@@ -2094,7 +2472,7 @@ interface PluginManagerInterface extends Instance {
2094
2472
  */
2095
2473
  readonly _nominal_PluginManagerInterface: unique symbol;
2096
2474
  /**
2097
- * Tags: Deprecated, CustomLuaState
2475
+ * Tags: CustomLuaState
2098
2476
  * @deprecated
2099
2477
  */
2100
2478
  CreatePlugin(this: PluginManagerInterface): Instance | undefined;
@@ -2146,6 +2524,7 @@ interface PluginMenu extends Instance {
2146
2524
  * * [PluginMenu:AddSeparator](https://developer.roblox.com/en-us/api-reference/function/PluginMenu/AddSeparator), adds a separator between items in the menu
2147
2525
  * * [PluginMenu:Clear](https://developer.roblox.com/en-us/api-reference/function/PluginMenu/Clear), clears the menu
2148
2526
  * * [PluginMenu:ShowAsync](https://developer.roblox.com/en-us/api-reference/function/PluginMenu/ShowAsync), shows the menu at the mouse cursor. Yields until either an item is selected or the menu is closed. The selected action fires its Triggered event
2527
+ *
2149
2528
  * Tags: NotReplicated
2150
2529
  */
2151
2530
  Icon: string;
@@ -2165,6 +2544,7 @@ interface PluginMenu extends Instance {
2165
2544
  * * [PluginMenu:AddSeparator](https://developer.roblox.com/en-us/api-reference/function/PluginMenu/AddSeparator), adds a separator between items in the menu
2166
2545
  * * [PluginMenu:Clear](https://developer.roblox.com/en-us/api-reference/function/PluginMenu/Clear), clears the menu
2167
2546
  * * [PluginMenu:ShowAsync](https://developer.roblox.com/en-us/api-reference/function/PluginMenu/ShowAsync), shows the menu at the mouse cursor. Yields until either an item is selected or the menu is closed. The selected action fires its Triggered event
2547
+ *
2168
2548
  * Tags: NotReplicated
2169
2549
  */
2170
2550
  Title: string;
@@ -2257,6 +2637,7 @@ interface PluginMenu extends Instance {
2257
2637
  * * [PluginMenu:AddMenu](https://developer.roblox.com/en-us/api-reference/function/PluginMenu/AddMenu), adds the given menu as a separator
2258
2638
  * * [PluginMenu:AddSeparator](https://developer.roblox.com/en-us/api-reference/function/PluginMenu/AddSeparator), adds a separator between items in the menu
2259
2639
  * * [PluginMenu:Clear](https://developer.roblox.com/en-us/api-reference/function/PluginMenu/Clear), clears the menu
2640
+ *
2260
2641
  * Tags: Yields
2261
2642
  */
2262
2643
  ShowAsync(this: PluginMenu): Instance | undefined;
@@ -2333,6 +2714,7 @@ interface PluginToolbarButton extends Instance {
2333
2714
  * ![Various plugin toolbar buttons visible while a Script is being edited, causing the game viewport to be hidden. Some of the buttons are enabled due to this property being true.](https://developer.roblox.com/assets/blt15abc50a70cd30be/PluginToolbarButton.ClickableWhenViewportHidden.jpg)
2334
2715
  *
2335
2716
  * Typically, this property is good to enable if an action triggered by a plugin button's [Click](https://developer.roblox.com/en-us/api-reference/event/PluginToolbarButton/Click) event doesn't occur in the game world (Workspace). For example, a button that opens a widget should have this property be true, as showing a widget is visible to the user even if the game view isn't visible.
2717
+ *
2336
2718
  * Tags: NotReplicated
2337
2719
  */
2338
2720
  ClickableWhenViewportHidden: boolean;
@@ -2345,6 +2727,7 @@ interface PluginToolbarButton extends Instance {
2345
2727
  * --------
2346
2728
  *
2347
2729
  * * [ClickableWhenViewportHidden](https://developer.roblox.com/en-us/api-reference/property/PluginToolbarButton/ClickableWhenViewportHidden), which determines whether a button is clickable when the game view is hidden (and not just in general)
2730
+ *
2348
2731
  * Tags: NotReplicated
2349
2732
  */
2350
2733
  Enabled: boolean;
@@ -2395,6 +2778,7 @@ interface RenderSettings extends Instance {
2395
2778
  EditQualityLevel: Enum.QualityLevel;
2396
2779
  /**
2397
2780
  * Toggles the enabled state of the framerate manager.
2781
+ *
2398
2782
  * Tags: Hidden, NotReplicated
2399
2783
  */
2400
2784
  EnableFRM: boolean;
@@ -2528,7 +2912,6 @@ interface RunService extends Instance {
2528
2912
  Pause(this: RunService): void;
2529
2913
  /**
2530
2914
  * The Reset function resets the current game to a waypoint set when Run was called. This method should only be used after Run was called.
2531
- * Tags: Deprecated
2532
2915
  * @deprecated
2533
2916
  */
2534
2917
  Reset(this: RunService): void;
@@ -2593,22 +2976,26 @@ interface ScriptDebugger extends Instance {
2593
2976
  readonly _nominal_ScriptDebugger: unique symbol;
2594
2977
  /**
2595
2978
  * The current line that the script is on.
2596
- * Tags: ReadOnly, NotReplicated
2979
+ *
2980
+ * Tags: NotReplicated
2597
2981
  */
2598
2982
  readonly CurrentLine: number;
2599
2983
  /**
2600
2984
  * Describes if this ScriptDebugger is actually debugging the script attached to it.
2601
- * Tags: ReadOnly, NotReplicated
2985
+ *
2986
+ * Tags: NotReplicated
2602
2987
  */
2603
2988
  readonly IsDebugging: boolean;
2604
2989
  /**
2605
2990
  * Describes if this ScriptDebugger is paused.
2606
- * Tags: ReadOnly, NotReplicated
2991
+ *
2992
+ * Tags: NotReplicated
2607
2993
  */
2608
2994
  readonly IsPaused: boolean;
2609
2995
  /**
2610
2996
  * The script object this debugger is linked to.
2611
- * Tags: ReadOnly, NotReplicated
2997
+ *
2998
+ * Tags: NotReplicated
2612
2999
  */
2613
3000
  readonly Script: Instance | undefined;
2614
3001
  /**
@@ -2775,7 +3162,7 @@ interface Selection extends Instance {
2775
3162
  */
2776
3163
  readonly _nominal_Selection: unique symbol;
2777
3164
  /**
2778
- * Tags: ReadOnly, NotReplicated
3165
+ * Tags: NotReplicated
2779
3166
  */
2780
3167
  readonly SelectionThickness: number;
2781
3168
  Add(this: Selection, instancesToAdd: Array<Instance>): void;
@@ -2947,7 +3334,7 @@ interface StatsItem extends Instance {
2947
3334
  */
2948
3335
  readonly _nominal_StatsItem: unique symbol;
2949
3336
  /**
2950
- * Tags: Hidden, ReadOnly, NotReplicated
3337
+ * Tags: Hidden, NotReplicated
2951
3338
  */
2952
3339
  readonly DisplayName: string;
2953
3340
  /**
@@ -3153,7 +3540,7 @@ interface Studio extends Instance {
3153
3540
  */
3154
3541
  LuaDebuggerEnabled: boolean;
3155
3542
  /**
3156
- * Tags: Hidden, ReadOnly, NotReplicated
3543
+ * Tags: Hidden, NotReplicated
3157
3544
  */
3158
3545
  readonly LuaDebuggerEnabledAtStartup: boolean;
3159
3546
  /**
@@ -3283,7 +3670,7 @@ interface Studio extends Instance {
3283
3670
  */
3284
3671
  Theme: StudioTheme;
3285
3672
  /**
3286
- * Tags: Hidden, ReadOnly, NotReplicated, Deprecated
3673
+ * Tags: Hidden, NotReplicated
3287
3674
  * @deprecated
3288
3675
  */
3289
3676
  readonly ["UI Theme"]: Enum.UITheme;
@@ -3350,15 +3737,16 @@ interface StudioService extends Instance {
3350
3737
  * activeScript = newActiveScript
3351
3738
  * end
3352
3739
  * game:GetService("StudioService"):GetPropertyChangedSignal("ActiveScript"):Connect(onActiveScriptChanged)
3353
- * Tags: ReadOnly, NotReplicated
3740
+ *
3741
+ * Tags: NotReplicated
3354
3742
  */
3355
3743
  readonly ActiveScript: Instance | undefined;
3356
3744
  /**
3357
- * Tags: ReadOnly, NotReplicated
3745
+ * Tags: NotReplicated
3358
3746
  */
3359
3747
  readonly DraggerSolveConstraints: boolean;
3360
3748
  /**
3361
- * Tags: ReadOnly, NotReplicated, Deprecated
3749
+ * Tags: NotReplicated
3362
3750
  * @deprecated
3363
3751
  */
3364
3752
  readonly DrawConstraintsOnTop: boolean;
@@ -3366,7 +3754,8 @@ interface StudioService extends Instance {
3366
3754
  * **GridSize** determines the distance in studs by which studio's drag and move tools move objects each tick. This is set by the user Model tab under the “Snap to Grid” section.
3367
3755
  *
3368
3756
  * ![Studio "snap to grid" UI](https://developer.roblox.com/assets/blt8ea442f1baf0663d/SnapToGrid.jpg)
3369
- * Tags: ReadOnly, NotReplicated
3757
+ *
3758
+ * Tags: NotReplicated
3370
3759
  */
3371
3760
  readonly GridSize: number;
3372
3761
  /**
@@ -3387,11 +3776,12 @@ interface StudioService extends Instance {
3387
3776
  * `90.0`
3388
3777
  *
3389
3778
  * ![](https://developer.roblox.com/assets/blt72e458401421d679/StudioService.RotateIncrement.90.jpg)
3390
- * Tags: ReadOnly, NotReplicated
3779
+ *
3780
+ * Tags: NotReplicated
3391
3781
  */
3392
3782
  readonly RotateIncrement: number;
3393
3783
  /**
3394
- * Tags: ReadOnly, NotReplicated
3784
+ * Tags: NotReplicated
3395
3785
  */
3396
3786
  readonly ShowConstraintDetails: boolean;
3397
3787
  /**
@@ -3409,7 +3799,8 @@ interface StudioService extends Instance {
3409
3799
  * elseif locale == "fr\_FR" then
3410
3800
  * print("Bonjour")
3411
3801
  * end
3412
- * Tags: ReadOnly, NotReplicated
3802
+ *
3803
+ * Tags: NotReplicated
3413
3804
  */
3414
3805
  readonly StudioLocaleId: string;
3415
3806
  /**
@@ -3434,6 +3825,7 @@ interface StudioService extends Instance {
3434
3825
  * ![](https://developer.roblox.com/assets/blt8175598ca3ea1650/StudioService.UseLocalSpace.false.jpg)
3435
3826
  *
3436
3827
  * ![](https://developer.roblox.com/assets/bltc26cf9b88a51df6b/StudioService.UseLocalSpace.false.rotation.jpg)
3828
+ *
3437
3829
  * Tags: NotReplicated
3438
3830
  */
3439
3831
  UseLocalSpace: boolean;
@@ -3472,6 +3864,7 @@ interface StudioService extends Instance {
3472
3864
  * --------
3473
3865
  *
3474
3866
  * * [StudioService:PromptImportFiles](https://developer.roblox.com/en-us/api-reference/function/StudioService/PromptImportFiles), the same function but for loading a list of files instead of a single file
3867
+ *
3475
3868
  * Tags: Yields
3476
3869
  */
3477
3870
  PromptImportFile(this: StudioService, fileTypeFilter?: Array<any>): Instance | undefined;
@@ -3484,6 +3877,7 @@ interface StudioService extends Instance {
3484
3877
  * --------
3485
3878
  *
3486
3879
  * * [StudioService:PromptImportFile](https://developer.roblox.com/en-us/api-reference/function/StudioService/PromptImportFile), the same function but for loading a single file instead of a list of files
3880
+ *
3487
3881
  * Tags: Yields
3488
3882
  */
3489
3883
  PromptImportFiles(this: StudioService, fileTypeFilter?: Array<any>): Array<Instance>;
@@ -3591,12 +3985,14 @@ interface TaskScheduler extends Instance {
3591
3985
  readonly _nominal_TaskScheduler: unique symbol;
3592
3986
  /**
3593
3987
  * The average time divided by the average interval of the duty cycle.
3594
- * Tags: ReadOnly, NotReplicated
3988
+ *
3989
+ * Tags: NotReplicated
3595
3990
  */
3596
3991
  readonly SchedulerDutyCycle: number;
3597
3992
  /**
3598
3993
  * The current average rate of the task scheduler.
3599
- * Tags: ReadOnly, NotReplicated
3994
+ *
3995
+ * Tags: NotReplicated
3600
3996
  */
3601
3997
  readonly SchedulerRate: number;
3602
3998
  /**
@@ -3605,7 +4001,8 @@ interface TaskScheduler extends Instance {
3605
4001
  ThreadPoolConfig: Enum.ThreadPoolConfig;
3606
4002
  /**
3607
4003
  * The current size of the thread pool.
3608
- * Tags: ReadOnly, NotReplicated
4004
+ *
4005
+ * Tags: NotReplicated
3609
4006
  */
3610
4007
  readonly ThreadPoolSize: number;
3611
4008
  }
@@ -3638,7 +4035,6 @@ interface TerrainRegion extends Instance {
3638
4035
  * Calling this method transforms the TerrainRegion into a [TerrainRegion](https://developer.roblox.com/en-us/api-reference/class/TerrainRegion) usable for [Terrain](https://developer.roblox.com/en-us/api-reference/class/Terrain). This can only be done from a plugin, when in edit mode.
3639
4036
  *
3640
4037
  * The game can't be running, nor can it have a [NetworkServer](https://developer.roblox.com/en-us/api-reference/class/NetworkServer).
3641
- * Tags: Deprecated
3642
4038
  * @deprecated
3643
4039
  */
3644
4040
  ConvertToSmooth(this: TerrainRegion): void;
@@ -3838,7 +4234,8 @@ interface TestService extends Instance {
3838
4234
  Description: string;
3839
4235
  /**
3840
4236
  * Measures how many errors have been recorded in the test session.
3841
- * Tags: ReadOnly, NotReplicated
4237
+ *
4238
+ * Tags: NotReplicated
3842
4239
  */
3843
4240
  readonly ErrorCount: number;
3844
4241
  /**
@@ -3873,7 +4270,8 @@ interface TestService extends Instance {
3873
4270
  SimulateSecondsLag: number;
3874
4271
  /**
3875
4272
  * Measures how many test calls have been recorded in the test session.
3876
- * Tags: ReadOnly, NotReplicated
4273
+ *
4274
+ * Tags: NotReplicated
3877
4275
  */
3878
4276
  readonly TestCount: number;
3879
4277
  /**
@@ -3882,7 +4280,8 @@ interface TestService extends Instance {
3882
4280
  Timeout: number;
3883
4281
  /**
3884
4282
  * Measures how many warning calls have been recorded in the test session.
3885
- * Tags: ReadOnly, NotReplicated
4283
+ *
4284
+ * Tags: NotReplicated
3886
4285
  */
3887
4286
  readonly WarnCount: number;
3888
4287
  /**
@@ -3923,6 +4322,7 @@ interface TestService extends Instance {
3923
4322
  isFeatureEnabled(this: TestService, name: string): boolean;
3924
4323
  /**
3925
4324
  * Runs scripts which are parented to TestService.
4325
+ *
3926
4326
  * Tags: Yields
3927
4327
  */
3928
4328
  Run(this: TestService): void;
@@ -3936,6 +4336,19 @@ interface TestService extends Instance {
3936
4336
  readonly ServerCollectResult: RBXScriptSignal<(text: string, script: LuaSourceContainer, line: number) => void>;
3937
4337
  }
3938
4338
 
4339
+ interface TextChatService extends Instance {
4340
+ /**
4341
+ * **DO NOT USE!**
4342
+ *
4343
+ * This field exists to force TypeScript to recognize this as a nominal type
4344
+ * @hidden
4345
+ * @deprecated
4346
+ */
4347
+ readonly _nominal_TextChatService: unique symbol;
4348
+ CreateDefaultCommands: boolean;
4349
+ CreateDefaultTextChannels: boolean;
4350
+ }
4351
+
3939
4352
  interface VersionControlService extends Instance {
3940
4353
  /**
3941
4354
  * **DO NOT USE!**