@rbxts/types 1.0.534 → 1.0.538

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.
@@ -52,11 +52,13 @@ interface Services {
52
52
  MemoryStoreService: MemoryStoreService;
53
53
  MessageBusService: MessageBusService;
54
54
  MessagingService: MessagingService;
55
+ NewVoiceChatService: NewVoiceChatService;
55
56
  PathfindingService: PathfindingService;
56
57
  PhysicsService: PhysicsService;
57
58
  Players: Players;
58
59
  PluginPolicyService: PluginPolicyService;
59
60
  PolicyService: PolicyService;
61
+ ProcessInstancePhysicsService: ProcessInstancePhysicsService;
60
62
  ProximityPromptService: ProximityPromptService;
61
63
  PublishService: PublishService;
62
64
  RemoteDebuggerServer: RemoteDebuggerServer;
@@ -140,6 +142,7 @@ interface CreatableInstances {
140
142
  ConeHandleAdornment: ConeHandleAdornment;
141
143
  Configuration: Configuration;
142
144
  CornerWedgePart: CornerWedgePart;
145
+ CurveAnimation: CurveAnimation;
143
146
  CylinderHandleAdornment: CylinderHandleAdornment;
144
147
  CylinderMesh: CylinderMesh;
145
148
  CylindricalConstraint: CylindricalConstraint;
@@ -1412,6 +1415,17 @@ interface AnimationClip extends Instance {
1412
1415
  Priority: Enum.AnimationPriority;
1413
1416
  }
1414
1417
 
1418
+ interface CurveAnimation extends AnimationClip {
1419
+ /**
1420
+ * **DO NOT USE!**
1421
+ *
1422
+ * This field exists to force TypeScript to recognize this as a nominal type
1423
+ * @hidden
1424
+ * @deprecated
1425
+ */
1426
+ readonly _nominal_CurveAnimation: unique symbol;
1427
+ }
1428
+
1415
1429
  /** This object stores all the [Keyframe](https://developer.roblox.com/en-us/api-reference/class/Keyframe)s for an animation, determines if the animation is looped, and determines its priority against other animations.
1416
1430
  *
1417
1431
  * What is a Keyframe Sequence?
@@ -1424,7 +1438,7 @@ interface AnimationClip extends Instance {
1424
1438
  * KeyframeSequence Properties
1425
1439
  * ---------------------------
1426
1440
  *
1427
- * The priority and looped animation settings are set by [KeyframeSequence.Priority](https://developer.roblox.com/en-us/api-reference/property/KeyframeSequence/Priority) and [KeyframeSequence.Loop](https://developer.roblox.com/en-us/api-reference/property/KeyframeSequence/Loop). Note these can be eventually overwritten by the [AnimationTrack](https://developer.roblox.com/en-us/api-reference/class/AnimationTrack) properties.
1441
+ * The priority and looped animation settings are set by `KeyframeSequence/Priority` and `KeyframeSequence/Loop`. Note these can be eventually overwritten by the [AnimationTrack](https://developer.roblox.com/en-us/api-reference/class/AnimationTrack) properties.
1428
1442
  *
1429
1443
  * The length of an animation is determined by the last [Keyframe](https://developer.roblox.com/en-us/api-reference/class/Keyframe) in the sequence, meaning the [Keyframe](https://developer.roblox.com/en-us/api-reference/class/Keyframe) with the highest [Keyframe.Time](https://developer.roblox.com/en-us/api-reference/property/Keyframe/Time) property.
1430
1444
  *
@@ -3933,6 +3947,10 @@ interface BaseWrap extends Instance {
3933
3947
  readonly ImportOriginWorld: CFrame;
3934
3948
  }
3935
3949
 
3950
+ /** The WrapLayer object defines a 3D accessory's inner and outer surfaces and other properties related to layering accessories. These surfaces, or the Inner Cage and Outer Cage, are similar to collision boxes, and describe the surfaces of which other 3D accessories can be placed without clipping or breaking.
3951
+ *
3952
+ * Internally, WrapLayer also uses the UV layout of the Inner and Outer cages to match coordinates to another 3D object's cage. This powers the deformation of objects around differently shaped avatars and underlying accessories.
3953
+ */
3936
3954
  interface WrapLayer extends BaseWrap {
3937
3955
  /**
3938
3956
  * **DO NOT USE!**
@@ -3942,19 +3960,46 @@ interface WrapLayer extends BaseWrap {
3942
3960
  * @deprecated
3943
3961
  */
3944
3962
  readonly _nominal_WrapLayer: unique symbol;
3963
+ /**
3964
+ * This property is intended for fine-tuning purposes and is highly optional.
3965
+ *
3966
+ * [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.
3967
+ */
3945
3968
  readonly BindOffset: CFrame;
3969
+ /**
3970
+ * Allows for disabling of the [WrapLayer](https://developer.roblox.com/en-us/api-reference/class/WrapLayer) object as if it does not exist.
3971
+ */
3946
3972
  Enabled: boolean;
3947
3973
  readonly Order: number;
3948
3974
  readonly Puffiness: number;
3975
+ /**
3976
+ * AssetID for reference mesh used to define Inner Cage of a 3D object
3977
+ *
3978
+ * 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.
3979
+ *
3980
+ * Note: this property is set up automatically by the FBX importer
3981
+ */
3949
3982
  readonly ReferenceMeshId: string;
3983
+ /**
3984
+ * Reference mesh offset relative to parent MeshPart (in the parent MeshPart space)
3985
+ *
3986
+ * Note: this property is set up automatically by the FBX importer
3987
+ */
3950
3988
  readonly ReferenceOrigin: CFrame;
3951
3989
  /**
3990
+ * Reference mesh offset relative to parent MeshPart (in the world space)
3991
+ *
3992
+ * Note: this property is set up automatically by the FBX importer
3952
3993
  * Tags: ReadOnly, NotReplicated
3953
3994
  */
3954
3995
  readonly ReferenceOriginWorld: CFrame;
3955
3996
  readonly ShrinkFactor: number;
3956
3997
  }
3957
3998
 
3999
+ /** The WrapTarget object defines a target. A target is the 3D body with only an outer surface, or an Outer Cage.
4000
+ *
4001
+ * This target, often an Avatar, is what 3D accessories (using WrapLayer) will be applied to, allowing multiple accessories items to naturally layer over the source target.
4002
+ */
3958
4003
  interface WrapTarget extends BaseWrap {
3959
4004
  /**
3960
4005
  * **DO NOT USE!**
@@ -3964,6 +4009,11 @@ interface WrapTarget extends BaseWrap {
3964
4009
  * @deprecated
3965
4010
  */
3966
4011
  readonly _nominal_WrapTarget: unique symbol;
4012
+ /**
4013
+ * 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.
4014
+ *
4015
+ * 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.
4016
+ */
3967
4017
  readonly Stiffness: number;
3968
4018
  }
3969
4019
 
@@ -4023,6 +4073,7 @@ interface Beam extends Instance {
4023
4073
  * For more information how a [Beam](https://developer.roblox.com/en-us/api-reference/class/Beam) curves, see [Beam.CurveSize1](https://developer.roblox.com/en-us/api-reference/property/Beam/CurveSize1).
4024
4074
  */
4025
4075
  Attachment1: Attachment | undefined;
4076
+ Brightness: number;
4026
4077
  /**
4027
4078
  * Determines the color of the [Beam](https://developer.roblox.com/en-us/api-reference/class/Beam).
4028
4079
  *
@@ -4421,6 +4472,31 @@ interface BindableEvent<T extends Callback = Callback> extends Instance {
4421
4472
  *
4422
4473
  * Any type of Roblox object such as an [Enumeration](https://developer.roblox.com/api-reference/enum), [Instance](https://developer.roblox.com/en-us/api-reference/class/Instance), or userdata can be passed as a parameter when a [RemoteEvent](https://developer.roblox.com/en-us/api-reference/class/RemoteEvent) is fired or a [RemoteFunction](https://developer.roblox.com/en-us/api-reference/class/RemoteFunction) invoked. Lua types such as numbers, strings, and booleans can also be passed, although there are some limitations on how data can be passed.
4423
4474
  *
4475
+ * #### Table Identity
4476
+ *
4477
+ * Copies of tables are produced when passed as arguments to or returned from the OnInvoke callback. This means that means that tables passed as arguments will not be exactly equivalent to those provided on invocation, and tables returned to the invoker will not be exactly equivalent to the ones returned by the OnInvoke callback. You can demonstrate this by running the following script in a BindableFunction:
4478
+ *
4479
+ * local bindableFunction = script.Parent
4480
+ *
4481
+ * bindableFunction.OnInvoke = function (t)
4482
+ * print("OnInvoke", tostring(t), t)
4483
+ * t = {bar = "foo"}
4484
+ * print("OnInvoke2", tostring(t), t)
4485
+ * return t
4486
+ * end
4487
+ *
4488
+ * local t = {foo = "bar"}
4489
+ * print("Subscriber", tostring(t), t)
4490
+ * local retVal = script.Parent:Invoke(t)
4491
+ * print("return", tostring(retVal), retVal)
4492
+ *
4493
+ * The above code may produce the following results in the output. Notice how the memory addresses of every table printed are completely different from each other, indicating they each represent different tables:
4494
+ *
4495
+ * 13:55:22.228 Subscriber table: 0xc7daaba4d5307f10 ▶ {...} - Publisher:11
4496
+ * 13:55:22.229 OnInvoke table: 0x2ee92a7818e7d210 ▶ {...} - Publisher:4
4497
+ * 13:55:22.229 OnInvoke2 table: 0xfa4ee529ddadf290 ▶ {...} - Publisher:6
4498
+ * 13:55:22.229 return table: 0x35b7bc1bc323d510 ▶ {...} - Publisher:13
4499
+ *
4424
4500
  * #### Mixed Tables
4425
4501
  *
4426
4502
  * Avoid passing a mixed table (some values indexed by number and others by key), as **only the data indexed by number will be passed**. For example, when the server receives the `colorData` table illustrated below, it will only see indices 1 and 2 containing `"Blue"` and `"Yellow"` while the other data will be lost in the transfer. Note, however, that **sub-tables** do not need to be indexed in the same way as their parent — in other words, as long as each individual sub-table is indexed with the same type, all of the data will be preserved.
@@ -4687,9 +4763,7 @@ interface BodyGyro extends BodyMover {
4687
4763
  P: number;
4688
4764
  }
4689
4765
 
4690
- /** **Note**
4691
- *
4692
- * This body mover has been superseded by [AngularPosition](AngularPosition). It's highly recommended that you use AngularPosition for future work.
4766
+ /** This body mover has been superseded by [AlignPosition](https://developer.roblox.com/en-us/api-reference/class/AlignPosition). It's highly recommended that you use [AlignPosition](https://developer.roblox.com/en-us/api-reference/class/AlignPosition) for future work.
4693
4767
  *
4694
4768
  * The **BodyPosition** object applies a force on a [BasePart](https://developer.roblox.com/en-us/api-reference/class/BasePart) such that it will maintain a constant position in the world. The [Position](https://developer.roblox.com/en-us/api-reference/property/BodyPosition/Position) property, not to be confused with [BasePart.Position](https://developer.roblox.com/en-us/api-reference/property/BasePart/Position), controls the target world position. This is the translational counterpart to a [BodyGyro](https://developer.roblox.com/en-us/api-reference/class/BodyGyro). If you need further control on a force applied to an object, consider using a [BodyForce](https://developer.roblox.com/en-us/api-reference/class/BodyForce) or [BodyThrust](https://developer.roblox.com/en-us/api-reference/class/BodyThrust) instead.
4695
4769
  *
@@ -6521,6 +6595,9 @@ interface HingeConstraint extends Constraint {
6521
6595
  * ![Servo](https://developer.roblox.com/assets/blt30faa18cf5f31d5c/HingeConstraintServo.gif)
6522
6596
  */
6523
6597
  ActuatorType: Enum.ActuatorType;
6598
+ /**
6599
+ * This property specifies the sharpness of the servo motor in reaching the [HingeConstraint.TargetAngle](https://developer.roblox.com/en-us/api-reference/property/HingeConstraint/TargetAngle), when [HingeConstraint.ActuatorType](https://developer.roblox.com/en-us/api-reference/property/HingeConstraint/ActuatorType) is set to **Servo**. Larger values correspond to a faster response and smaller values results in more damping and a slower response.
6600
+ */
6524
6601
  AngularResponsiveness: number;
6525
6602
  /**
6526
6603
  * The desired angular speed a [HingeConstraint](https://developer.roblox.com/en-us/api-reference/class/HingeConstraint) with [HingeConstraint.ActuatorType](https://developer.roblox.com/en-us/api-reference/property/HingeConstraint/ActuatorType) set to [Servo](https://developer.roblox.com/en-us/api-reference/enum/ActuatorType) will attempt to maintain while rotating towards its [HingeConstraint.TargetAngle](https://developer.roblox.com/en-us/api-reference/property/HingeConstraint/TargetAngle). Measured in radians/second.
@@ -6845,6 +6922,9 @@ interface SlidingBallConstraint extends Constraint {
6845
6922
  * ![Constraint Limits 2](https://developer.roblox.com/assets/blt7eda4750d97b868c/SlidingBallConstraintLimits1.png)
6846
6923
  */
6847
6924
  LimitsEnabled: boolean;
6925
+ /**
6926
+ * This property specifies the sharpness of the linear servo motor in reaching the [SlidingBallConstraint.TargetPosition](https://developer.roblox.com/en-us/api-reference/property/SlidingBallConstraint/TargetPosition), when the derived classes' actuator type is set to **Servo**, for example the [CylindricalConstraint](https://developer.roblox.com/en-us/api-reference/class/CylindricalConstraint) and [PrismaticConstraint](https://developer.roblox.com/en-us/api-reference/class/PrismaticConstraint). Larger values correspond to faster a response and smaller values results in more damping and a slower response.
6927
+ */
6848
6928
  LinearResponsiveness: number;
6849
6929
  /**
6850
6930
  * The lower position limit along the x-axis of [Constraint.Attachment0](https://developer.roblox.com/en-us/api-reference/property/Constraint/Attachment0) for a [SlidingBallConstraint](https://developer.roblox.com/en-us/api-reference/class/SlidingBallConstraint) if [SlidingBallConstraint.LimitsEnabled](https://developer.roblox.com/en-us/api-reference/property/SlidingBallConstraint/LimitsEnabled) is true.
@@ -6928,6 +7008,9 @@ interface CylindricalConstraint extends SlidingBallConstraint {
6928
7008
  * Enables the angular limits around the rotation axis.
6929
7009
  */
6930
7010
  AngularLimitsEnabled: boolean;
7011
+ /**
7012
+ * This property specifies the sharpness of the angular servo motor in reaching the [CylindricalConstraint.TargetAngle](https://developer.roblox.com/en-us/api-reference/property/CylindricalConstraint/TargetAngle), when [CylindricalConstraint.AngularActuatorType](https://developer.roblox.com/en-us/api-reference/property/CylindricalConstraint/AngularActuatorType) is set to **Servo**. Larger values correspond to a faster response and smaller values results in more damping and a slower response.
7013
+ */
6931
7014
  AngularResponsiveness: number;
6932
7015
  /**
6933
7016
  * Restitution of the two limits, or how elastic they are. Value in \[0, 1\].
@@ -8753,6 +8836,7 @@ interface DraggerService extends Instance {
8753
8836
  ShowPivotIndicator: boolean;
8754
8837
  }
8755
8838
 
8839
+ /** A EulerRotation Curve represents a 3D rotation curve, it groups 3 [FloatCurves](https://developer.roblox.com/en-us/api-reference/class/FloatCurve), stored as 3 FloatCurve child instances. The rotation is decomposed in 3 Euler angles channels that can be accessed via [EulerRotationCurve:X](https://developer.roblox.com/en-us/api-reference/function/EulerRotationCurve/X), [EulerRotationCurve:Y](https://developer.roblox.com/en-us/api-reference/function/EulerRotationCurve/Y), [EulerRotationCurve:Z](https://developer.roblox.com/en-us/api-reference/function/EulerRotationCurve/Z) methods. The 3 axes can be sampled simultaneously via the method [EulerRotationCurve:GetAnglesAtTime](https://developer.roblox.com/en-us/api-reference/function/EulerRotationCurve/GetAnglesAtTime) returning the 3 Euler angles as a Vector3. Similarly, [EulerRotationCurve:GetRotationAtTime](https://developer.roblox.com/en-us/api-reference/function/EulerRotationCurve/GetRotationAtTime) samples all channels simultaneously but returns a CFrame rotated by X, Y, and Z according to the specified rotation order. */
8756
8840
  interface EulerRotationCurve extends Instance {
8757
8841
  /**
8758
8842
  * **DO NOT USE!**
@@ -8762,11 +8846,23 @@ interface EulerRotationCurve extends Instance {
8762
8846
  * @deprecated
8763
8847
  */
8764
8848
  readonly _nominal_EulerRotationCurve: unique symbol;
8849
+ /**
8850
+ * Euler angles rotation order
8851
+ */
8765
8852
  RotationOrder: Enum.RotationOrder;
8766
8853
  GetAnglesAtTime(this: EulerRotationCurve, time: number): unknown;
8854
+ /**
8855
+ * Samples the [EulerRotationCurve](https://developer.roblox.com/en-us/api-reference/class/EulerRotationCurve) at a given time and returns the corresponding rotation. Empty Euler angles channels are interpreted as zero.
8856
+ */
8767
8857
  GetRotationAtTime(this: EulerRotationCurve, time: number): CFrame;
8768
8858
  X(this: EulerRotationCurve): FloatCurve;
8859
+ /**
8860
+ * Returns the [FloatCurve](https://developer.roblox.com/en-us/api-reference/class/FloatCurve) controlling the Y channel. It is the first child instance of type [FloatCurve](https://developer.roblox.com/en-us/api-reference/class/FloatCurve) named 'Y'. If none is found an empty [FloatCurve](https://developer.roblox.com/en-us/api-reference/class/FloatCurve) is created.
8861
+ */
8769
8862
  Y(this: EulerRotationCurve): FloatCurve;
8863
+ /**
8864
+ * Returns the [FloatCurve](https://developer.roblox.com/en-us/api-reference/class/FloatCurve) controlling the Z channel. It is the first child instance of type [FloatCurve](https://developer.roblox.com/en-us/api-reference/class/FloatCurve) named `Z`. If none is found an empty [FloatCurve](https://developer.roblox.com/en-us/api-reference/class/FloatCurve) is created.
8865
+ */
8770
8866
  Z(this: EulerRotationCurve): FloatCurve;
8771
8867
  }
8772
8868
 
@@ -9238,6 +9334,10 @@ interface Fire extends Instance {
9238
9334
  Size: number;
9239
9335
  }
9240
9336
 
9337
+ /** An instance representing a 1D float curve encoded via a sorted list of [FloatCurveKeys](https://developer.roblox.com/en-us/api-reference/class/FloatCurveKey).
9338
+ *
9339
+ * `FloatCurveKey` are value-time points that represent the changes in value over time. The changes of a single value over time are represented by a curve. Animators can edit keys to modify a curve. The shape of the curve is dictated by the [KeyInterpolationMode](https://developer.roblox.com/en-us/api-reference/enum/KeyInterpolationMode) chosen at each key.
9340
+ */
9241
9341
  interface FloatCurve extends Instance {
9242
9342
  /**
9243
9343
  * **DO NOT USE!**
@@ -9475,7 +9575,7 @@ interface GlobalDataStore extends Instance {
9475
9575
  /**
9476
9576
  * This function returns the latest value of the provided key and a [DataStoreKeyInfo](https://developer.roblox.com/en-us/api-reference/class/DataStoreKeyInfo) instance. If the key does not exist or if the latest version has been marked as deleted, both return values will be `nil`.
9477
9577
  *
9478
- * [OrderedDataStore](https://developer.roblox.com/en-us/api-reference/class/OrderedDataStore) does not support v2.0 features such as versioning and metadata, so [DataStoreKeyInfo](https://developer.roblox.com/en-us/api-reference/class/DataStoreKeyInfo) will always be `nil` for keys in an [OrderedDataStore](https://developer.roblox.com/en-us/api-reference/class/OrderedDataStore). [DataStoreKeyInfo](https://developer.roblox.com/en-us/api-reference/class/DataStoreKeyInfo) will also be `nil` if v2.0 experimental features are not enabled.
9578
+ * [OrderedDataStore](https://developer.roblox.com/en-us/api-reference/class/OrderedDataStore) does not support versioning and metadata, so [DataStoreKeyInfo](https://developer.roblox.com/en-us/api-reference/class/DataStoreKeyInfo) will always be `nil` for keys in an [OrderedDataStore](https://developer.roblox.com/en-us/api-reference/class/OrderedDataStore).
9479
9579
  *
9480
9580
  * Keys are cached locally for 4 seconds after the first read. A [GlobalDataStore:GetAsync](https://developer.roblox.com/en-us/api-reference/function/GlobalDataStore/GetAsync) call within these 4 seconds returns a value from the cache. Modifications to the key by [GlobalDataStore:SetAsync](https://developer.roblox.com/en-us/api-reference/function/GlobalDataStore/SetAsync) or [GlobalDataStore:UpdateAsync](https://developer.roblox.com/en-us/api-reference/function/GlobalDataStore/UpdateAsync) apply to the cache immediately and restart the 4 second timer.
9481
9581
  *
@@ -9547,7 +9647,7 @@ interface GlobalDataStore extends Instance {
9547
9647
  *
9548
9648
  * If the update succeeds, a new version of the value will be created and prior versions will remain accessible through [DataStore:ListVersionsAsync](https://developer.roblox.com/en-us/api-reference/function/DataStore/ListVersionsAsync) and [DataStore:GetVersionAsync](https://developer.roblox.com/en-us/api-reference/function/DataStore/GetVersionAsync).
9549
9649
  *
9550
- * [OrderedDataStore](https://developer.roblox.com/en-us/api-reference/class/OrderedDataStore) does not support v2.0 features such as versioning, so calling this function on an [OrderedDataStore](https://developer.roblox.com/en-us/api-reference/class/OrderedDataStore) key will overwrite the current value and make previous versions inaccessible.
9650
+ * [OrderedDataStore](https://developer.roblox.com/en-us/api-reference/class/OrderedDataStore) does not support versioning, so calling this function on an [OrderedDataStore](https://developer.roblox.com/en-us/api-reference/class/OrderedDataStore) key will overwrite the current value and make previous versions inaccessible.
9551
9651
  *
9552
9652
  * In cases where another game server updated the key in the short timespan between retrieving the key's current value and setting the key's value, [GlobalDataStore:UpdateAsync](https://developer.roblox.com/en-us/api-reference/function/GlobalDataStore/UpdateAsync) will call the function again to ensure that no data is overwritten. The function will be called as many times as needed until the data is saved **or** until the callback function returns `nil`.
9553
9653
  *
@@ -14892,6 +14992,9 @@ interface HumanoidDescription extends Instance {
14892
14992
  * * [GetEmotes](https://developer.roblox.com/en-us/api-reference/function/HumanoidDescription/GetEmotes), which can retrieve a dictionary of emotes that may be removed
14893
14993
  */
14894
14994
  RemoveEmote(this: HumanoidDescription, name: string): void;
14995
+ /**
14996
+ * Accepts a table that sets the accessories and related properties for an avatar. If the second parameter (includeRigidAccessories) is true, then this function can also be used to set the rigid accessories in the rigid accessory properties. In this case any table entry that does not have an Order will be considered a rigid accessory and put in the appropriate property according to the AccessoryType.
14997
+ */
14895
14998
  SetAccessories(this: HumanoidDescription, accessories: Array<any>, includeRigidAccessories: boolean): void;
14896
14999
  /**
14897
15000
  * **SetEmotes** sets all of the emotes on this description given a table similar to that returned by [GetEmotes](https://developer.roblox.com/en-us/api-reference/function/HumanoidDescription/GetEmotes). It fires [EmotesChanged](https://developer.roblox.com/en-us/api-reference/event/HumanoidDescription/EmotesChanged)
@@ -15032,6 +15135,7 @@ interface ImporterGroupSettings extends ImporterBaseSettings {
15032
15135
  * @deprecated
15033
15136
  */
15034
15137
  readonly _nominal_ImporterGroupSettings: unique symbol;
15138
+ ImportAsModelAsset: boolean;
15035
15139
  }
15036
15140
 
15037
15141
  interface ImporterJointSettings extends ImporterBaseSettings {
@@ -15054,8 +15158,16 @@ interface ImporterMeshSettings extends ImporterBaseSettings {
15054
15158
  * @deprecated
15055
15159
  */
15056
15160
  readonly _nominal_ImporterMeshSettings: unique symbol;
15161
+ /**
15162
+ * Tags: ReadOnly, NotReplicated
15163
+ */
15164
+ readonly Dimensions: Vector3;
15057
15165
  DoubleSided: boolean;
15058
15166
  IgnoreVertexColors: boolean;
15167
+ /**
15168
+ * Tags: ReadOnly, NotReplicated
15169
+ */
15170
+ readonly PolygonCount: number;
15059
15171
  }
15060
15172
 
15061
15173
  interface ImporterRootSettings extends ImporterBaseSettings {
@@ -15071,6 +15183,7 @@ interface ImporterRootSettings extends ImporterBaseSettings {
15071
15183
  * Tags: ReadOnly, NotReplicated
15072
15184
  */
15073
15185
  readonly FileDimensions: Vector3;
15186
+ ImportAsModelAsset: boolean;
15074
15187
  InvertNegativeFaces: boolean;
15075
15188
  MergeMeshes: boolean;
15076
15189
  /**
@@ -20675,6 +20788,17 @@ interface NetworkMarker extends Instance {
20675
20788
  readonly Received: RBXScriptSignal<() => void>;
20676
20789
  }
20677
20790
 
20791
+ interface NewVoiceChatService extends Instance {
20792
+ /**
20793
+ * **DO NOT USE!**
20794
+ *
20795
+ * This field exists to force TypeScript to recognize this as a nominal type
20796
+ * @hidden
20797
+ * @deprecated
20798
+ */
20799
+ readonly _nominal_NewVoiceChatService: unique symbol;
20800
+ }
20801
+
20678
20802
  /** The NoCollisionConstraint is an instance used to prevent collisions between two specific parts. Connected [Parts](https://developer.roblox.com/en-us/api-reference/class/BasePart) will have no collision reaction between them, but can still have collisions with the rest of the world. Both parts can still receive touch events.
20679
20803
  *
20680
20804
  * Using a NoCollisionConstraint will allow you to create and share [Models](https://developer.roblox.com/en-us/api-reference/class/Model) with customized collision filtering. While you can still achieve collision filtering with [Collision Groups](https://developer.roblox.com/articles/Collision-Filtering), you are unable to export that information to a model without adding a script to set them when the game runs.
@@ -23570,6 +23694,7 @@ interface ParticleEmitter extends Instance {
23570
23694
  * Acceleration is most often used to apply a gravity effect to particles (try a value of (0, -3, 0) for this). You can also use small values on the X/Z axes to make it look like particles are being blown away by wind. If you emit a bubble particle downwards, you could use an acceleration of (0, 5, 0) to cause the bubbles to decelerate and then float back upwards.
23571
23695
  */
23572
23696
  Acceleration: Vector3;
23697
+ Brightness: number;
23573
23698
  /**
23574
23699
  * The Color property determines the color of all particles active in an emitter's system. The color is applied to the [ParticleEmitter.Texture](https://developer.roblox.com/en-us/api-reference/property/ParticleEmitter/Texture) when rendering, and uses the texture alpha along with the [ParticleEmitter.Transparency](https://developer.roblox.com/en-us/api-reference/property/ParticleEmitter/Transparency). If a particle has a [ParticleEmitter.LightEmission](https://developer.roblox.com/en-us/api-reference/property/ParticleEmitter/LightEmission) of greater than 0, darker colors will make particles appear more transparent. Below, two default [ParticleEmitter](https://developer.roblox.com/en-us/api-reference/class/ParticleEmitter) are pictured, except the right emitter uses a Color from yellow to cyan.
23575
23700
  *
@@ -23678,6 +23803,10 @@ interface ParticleEmitter extends Instance {
23678
23803
  * Changes to this value only affect new particles; existing particles will maintain the rotation at which they were originally emitted.
23679
23804
  */
23680
23805
  Rotation: NumberRange;
23806
+ Shape: Enum.ParticleEmitterShape;
23807
+ ShapeInOut: Enum.ParticleEmitterShapeInOut;
23808
+ ShapePartial: number;
23809
+ ShapeStyle: Enum.ParticleEmitterShapeStyle;
23681
23810
  /**
23682
23811
  * The Size property determines the world size in studs of all active particles over their individual lifetimes. This property represents the dimensions of the square [ParticleEmitter.Texture](https://developer.roblox.com/en-us/api-reference/property/ParticleEmitter/Texture) for each particle. It is a [NumberSequence](https://developer.roblox.com/en-us/api-reference/datatype/NumberSequence) that works similar to [ParticleEmitter.Transparency](https://developer.roblox.com/en-us/api-reference/property/ParticleEmitter/Transparency) and [ParticleEmitter.Color](https://developer.roblox.com/en-us/api-reference/property/ParticleEmitter/Color).
23683
23812
  *
@@ -23712,6 +23841,7 @@ interface ParticleEmitter extends Instance {
23712
23841
  * Setting one axis to 360 will cause particles to emit in all direction in a **circle**. Setting both to 360 will cause particles to emit in all directions in a **sphere**.
23713
23842
  */
23714
23843
  SpreadAngle: Vector2;
23844
+ Squash: NumberSequence;
23715
23845
  /**
23716
23846
  * The Texture property determines the image rendered on particle billboards. The rendered image is influenced by [ParticleEmitter.Color](https://developer.roblox.com/en-us/api-reference/property/ParticleEmitter/Color), [ParticleEmitter.Transparency](https://developer.roblox.com/en-us/api-reference/property/ParticleEmitter/Transparency), [ParticleEmitter.LightInfluence](https://developer.roblox.com/en-us/api-reference/property/ParticleEmitter/LightInfluence), and [ParticleEmitter.LightEmission](https://developer.roblox.com/en-us/api-reference/property/ParticleEmitter/LightEmission). Transparent textures work best for particles
23717
23847
  *
@@ -25836,6 +25966,17 @@ interface SunRaysEffect extends PostEffect {
25836
25966
  Spread: number;
25837
25967
  }
25838
25968
 
25969
+ interface ProcessInstancePhysicsService extends Instance {
25970
+ /**
25971
+ * **DO NOT USE!**
25972
+ *
25973
+ * This field exists to force TypeScript to recognize this as a nominal type
25974
+ * @hidden
25975
+ * @deprecated
25976
+ */
25977
+ readonly _nominal_ProcessInstancePhysicsService: unique symbol;
25978
+ }
25979
+
25839
25980
  /** The ProximityPrompt is an object that allows developers to prompt users to interact with an object in the 3D world, such as opening a door or picking up an item.
25840
25981
  *
25841
25982
  * ProximityPrompts work when parented to a [Part](https://developer.roblox.com/en-us/api-reference/class/Part), [Model](https://developer.roblox.com/en-us/api-reference/class/Model), or [Attachment](https://developer.roblox.com/en-us/api-reference/class/Attachment) in the workspace.
@@ -26265,6 +26406,7 @@ interface ReplicatedStorage extends Instance {
26265
26406
  readonly _nominal_ReplicatedStorage: unique symbol;
26266
26407
  }
26267
26408
 
26409
+ /** A sorted list of [RotationCurveKey](https://developer.roblox.com/en-us/api-reference/class/RotationCurveKeys). RotationCurveKeys are value-time points on a curve that dictate the animation curves. It provides a sampling method returning its result as the rotation component of a CFrame. */
26268
26410
  interface RotationCurve extends Instance {
26269
26411
  /**
26270
26412
  * **DO NOT USE!**
@@ -30141,6 +30283,7 @@ interface Trail extends Instance {
30141
30283
  * Changing the Attachments of a Trail while a trail is drawing will remove all of the segments the trail has already drawn.
30142
30284
  */
30143
30285
  Attachment1: Attachment | undefined;
30286
+ Brightness: number;
30144
30287
  /**
30145
30288
  * The color of a [Trail](https://developer.roblox.com/en-us/api-reference/class/Trail) can be set with the effect's Color property. This property determines what color the segments of the trail will have through their [Trail.Lifetime](https://developer.roblox.com/en-us/api-reference/property/Trail/Lifetime).
30146
30289
  *
@@ -30209,7 +30352,15 @@ interface Trail extends Instance {
30209
30352
  */
30210
30353
  LightEmission: number;
30211
30354
  /**
30212
- * The LightInfluence property sets how much the trail is influenced by the lighting around it. The property can be set to a value from 0 to 1, with 1 being the most influenced and 0 be the least influenced.
30355
+ * **LightInfluence** determines the factor the light in the environment affects the appearance of the Trail. A value of zero (0) ensures no influence which allows a trail to be visible even in complete darkness.
30356
+ *
30357
+ * Changing this property immediately affects all existing and future segments of the trail.
30358
+ *
30359
+ * See also
30360
+ * --------
30361
+ *
30362
+ * * [LightEmission](https://developer.roblox.com/en-us/api-reference/property/Trail/LightEmission), another Trail property related to light
30363
+ * * [Beam.LightEmission](https://developer.roblox.com/en-us/api-reference/property/Beam/LightEmission), an identical property used by [Beam](https://developer.roblox.com/en-us/api-reference/class/Beam)s
30213
30364
  */
30214
30365
  LightInfluence: number;
30215
30366
  /**
@@ -31612,20 +31763,15 @@ interface UserInputService extends Instance {
31612
31763
  */
31613
31764
  readonly KeyboardEnabled: boolean;
31614
31765
  /**
31615
- * The ModalEnabled property toggles whether Roblox's mobile controls are hidden on a player's mobile device. The default value of this property is _false_. The controls are hidden when set to _true_, and not hidden when set to _false_. See the images below for examples.
31766
+ * **ModalEnabled** property determines whether character controls are hidden on [TouchEnabled](https://developer.roblox.com/en-us/api-reference/property/UserInputService/TouchEnabled) devices. By default, this property is _false_ and controls are visible.
31616
31767
  *
31617
31768
  * ![ModalEnabled = false](https://developer.roblox.com/assets/blt0785000a560d8788/UISModalEnabledFalse.png)
31618
31769
  *
31619
31770
  * ![ModalEnabled = true](https://developer.roblox.com/assets/bltb592006955fd388d/UISModalEnabledTrue.png)
31620
31771
  *
31621
- * This property can be used when you want to hide or display Roblox's mobile controls for a player.
31772
+ * This property will only work when used in a [LocalScript](https://developer.roblox.com/en-us/api-reference/class/LocalScript) running for the player whose character controls are to be hidden.
31622
31773
  *
31623
31774
  * Even if mobile controls are hidden for a player on a mobile device, other UserInputService events such as [UserInputService.InputBegan](https://developer.roblox.com/en-us/api-reference/event/UserInputService/InputBegan) and [UserInputService.TouchSwipe](https://developer.roblox.com/en-us/api-reference/event/UserInputService/TouchSwipe) can still be used to process other forms of user input on mobile devices with an enabled touch screen (see the main UserInputService class page for a full list).
31624
- *
31625
- * Since [UserInputService](https://developer.roblox.com/en-us/api-reference/class/UserInputService) only runs client-side, this property will only work when used in a [LocalScript](https://developer.roblox.com/en-us/api-reference/class/LocalScript).
31626
- *
31627
- * ##See Also
31628
- * The tutorial on disabling parts of the game interface, found [here](https://www.robloxdev.com/articles/Disabling-Parts-of-Game-Interface), provides excellent documentation on using this property.
31629
31775
  * Tags: Deprecated
31630
31776
  * @deprecated
31631
31777
  */
@@ -33564,6 +33710,7 @@ interface Vector3Value extends ValueBase {
33564
33710
  readonly Changed: RBXScriptSignal<(value: Vector3) => void>;
33565
33711
  }
33566
33712
 
33713
+ /** Represents a 3D vector curve containing 3 [FloatCurves](https://developer.roblox.com/en-us/api-reference/class/FloatCurve), stored as 3 FloatCurve children instances. Each FloatCurve can be accessed via [Vector3Curve:X](https://developer.roblox.com/en-us/api-reference/function/Vector3Curve/X), [Vector3Curve:Y](https://developer.roblox.com/en-us/api-reference/function/Vector3Curve/Y), [Vector3Curve:Z](https://developer.roblox.com/en-us/api-reference/function/Vector3Curve/Z) methods. The 3 axes can be sampled simultaneously via the method [Vector3Curve:GetValueAtTime](https://developer.roblox.com/en-us/api-reference/function/Vector3Curve/GetValueAtTime). */
33567
33714
  interface Vector3Curve extends Instance {
33568
33715
  /**
33569
33716
  * **DO NOT USE!**
@@ -33588,16 +33735,6 @@ interface VoiceChatService extends Instance {
33588
33735
  * @deprecated
33589
33736
  */
33590
33737
  readonly _nominal_VoiceChatService: unique symbol;
33591
- /**
33592
- * Tags: Hidden, ReadOnly, NotReplicated, Deprecated
33593
- * @deprecated
33594
- */
33595
- readonly VoiceChatState: Enum.VoiceChatState;
33596
- /**
33597
- * Tags: Deprecated
33598
- * @deprecated
33599
- */
33600
- GetAndClearCallFailureMessage(this: VoiceChatService): string;
33601
33738
  /**
33602
33739
  * Tags: Deprecated
33603
33740
  * @deprecated
@@ -33682,21 +33819,6 @@ interface VoiceChatService extends Instance {
33682
33819
  * Tags: Yields
33683
33820
  */
33684
33821
  IsVoiceEnabledForUserIdAsync(this: VoiceChatService, userId: number): boolean;
33685
- /**
33686
- * Tags: Deprecated
33687
- * @deprecated
33688
- */
33689
- readonly ParticipantsStateChanged: RBXScriptSignal<(participantsLeft: Array<any>, participantsJoined: Array<any>, updatedStates: Array<any>) => void>;
33690
- /**
33691
- * Tags: Deprecated
33692
- * @deprecated
33693
- */
33694
- readonly PlayerMicActivitySignalChange: RBXScriptSignal<(activityInfo: object) => void>;
33695
- /**
33696
- * Tags: Deprecated
33697
- * @deprecated
33698
- */
33699
- readonly StateChanged: RBXScriptSignal<(oldValue: Enum.VoiceChatState, newValue: Enum.VoiceChatState) => void>;
33700
33822
  }
33701
33823
 
33702
33824
  interface VoiceSource extends Instance {
@@ -5778,14 +5778,6 @@ declare namespace Enum {
5778
5778
 
5779
5779
  export const Automatic: Automatic;
5780
5780
 
5781
- export interface Direct3D9 {
5782
- Name: "Direct3D9";
5783
- Value: 3;
5784
- EnumType: EnumType<GraphicsMode>;
5785
- }
5786
-
5787
- export const Direct3D9: Direct3D9;
5788
-
5789
5781
  export interface Direct3D11 {
5790
5782
  Name: "Direct3D11";
5791
5783
  Value: 2;
@@ -5828,7 +5820,7 @@ declare namespace Enum {
5828
5820
 
5829
5821
  export function GetEnumItems(this: defined): Array<GraphicsMode>
5830
5822
  }
5831
- export type GraphicsMode = GraphicsMode.Automatic | GraphicsMode.Direct3D9 | GraphicsMode.Direct3D11 | GraphicsMode.OpenGL | GraphicsMode.Metal | GraphicsMode.Vulkan | GraphicsMode.NoGraphics;
5823
+ export type GraphicsMode = GraphicsMode.Automatic | GraphicsMode.Direct3D11 | GraphicsMode.OpenGL | GraphicsMode.Metal | GraphicsMode.Vulkan | GraphicsMode.NoGraphics;
5832
5824
  export namespace HandlesStyle {
5833
5825
  export interface Resize {
5834
5826
  Name: "Resize";
@@ -10149,6 +10141,90 @@ declare namespace Enum {
10149
10141
  export function GetEnumItems(this: defined): Array<PartType>
10150
10142
  }
10151
10143
  export type PartType = PartType.Ball | PartType.Block | PartType.Cylinder;
10144
+ export namespace ParticleEmitterShape {
10145
+ export interface Box {
10146
+ Name: "Box";
10147
+ Value: 0;
10148
+ EnumType: EnumType<ParticleEmitterShape>;
10149
+ }
10150
+
10151
+ export const Box: Box;
10152
+
10153
+ export interface Sphere {
10154
+ Name: "Sphere";
10155
+ Value: 1;
10156
+ EnumType: EnumType<ParticleEmitterShape>;
10157
+ }
10158
+
10159
+ export const Sphere: Sphere;
10160
+
10161
+ export interface Cylinder {
10162
+ Name: "Cylinder";
10163
+ Value: 2;
10164
+ EnumType: EnumType<ParticleEmitterShape>;
10165
+ }
10166
+
10167
+ export const Cylinder: Cylinder;
10168
+
10169
+ export interface Disc {
10170
+ Name: "Disc";
10171
+ Value: 3;
10172
+ EnumType: EnumType<ParticleEmitterShape>;
10173
+ }
10174
+
10175
+ export const Disc: Disc;
10176
+
10177
+ export function GetEnumItems(this: defined): Array<ParticleEmitterShape>
10178
+ }
10179
+ export type ParticleEmitterShape = ParticleEmitterShape.Box | ParticleEmitterShape.Sphere | ParticleEmitterShape.Cylinder | ParticleEmitterShape.Disc;
10180
+ export namespace ParticleEmitterShapeInOut {
10181
+ export interface Outward {
10182
+ Name: "Outward";
10183
+ Value: 0;
10184
+ EnumType: EnumType<ParticleEmitterShapeInOut>;
10185
+ }
10186
+
10187
+ export const Outward: Outward;
10188
+
10189
+ export interface Inward {
10190
+ Name: "Inward";
10191
+ Value: 1;
10192
+ EnumType: EnumType<ParticleEmitterShapeInOut>;
10193
+ }
10194
+
10195
+ export const Inward: Inward;
10196
+
10197
+ export interface InAndOut {
10198
+ Name: "InAndOut";
10199
+ Value: 2;
10200
+ EnumType: EnumType<ParticleEmitterShapeInOut>;
10201
+ }
10202
+
10203
+ export const InAndOut: InAndOut;
10204
+
10205
+ export function GetEnumItems(this: defined): Array<ParticleEmitterShapeInOut>
10206
+ }
10207
+ export type ParticleEmitterShapeInOut = ParticleEmitterShapeInOut.Outward | ParticleEmitterShapeInOut.Inward | ParticleEmitterShapeInOut.InAndOut;
10208
+ export namespace ParticleEmitterShapeStyle {
10209
+ export interface Volume {
10210
+ Name: "Volume";
10211
+ Value: 0;
10212
+ EnumType: EnumType<ParticleEmitterShapeStyle>;
10213
+ }
10214
+
10215
+ export const Volume: Volume;
10216
+
10217
+ export interface Surface {
10218
+ Name: "Surface";
10219
+ Value: 1;
10220
+ EnumType: EnumType<ParticleEmitterShapeStyle>;
10221
+ }
10222
+
10223
+ export const Surface: Surface;
10224
+
10225
+ export function GetEnumItems(this: defined): Array<ParticleEmitterShapeStyle>
10226
+ }
10227
+ export type ParticleEmitterShapeStyle = ParticleEmitterShapeStyle.Volume | ParticleEmitterShapeStyle.Surface;
10152
10228
  export namespace ParticleOrientation {
10153
10229
  export interface FacingCamera {
10154
10230
  Name: "FacingCamera";
package/include/lua.d.ts CHANGED
@@ -673,6 +673,10 @@ declare namespace bit32 {
673
673
  declare namespace table {
674
674
  /** Sorts list elements in a given order, in-place, from `list[1]` to `list[#list]`. Comp is a function that receives two list elements and returns true when the first element must come before the second in the final order (so that `not comp(list[i+1],list[i])` will be true after the sort). */
675
675
  function sort<T>(t: Array<T>, comp?: (a: T, b: T) => boolean): void;
676
+ /** Makes the table read-only and prohibits all further modifications */
677
+ function freeze(t: object): void;
678
+ /** Returns whether or not `t` is frozen */
679
+ function isfrozen<T extends object>(t: T): t is Readonly<T>;
676
680
  }
677
681
 
678
682
  type thread = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rbxts/types",
3
- "version": "1.0.534",
3
+ "version": "1.0.538",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },