@rbxts/types 1.0.537 → 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.
@@ -3947,6 +3947,10 @@ interface BaseWrap extends Instance {
3947
3947
  readonly ImportOriginWorld: CFrame;
3948
3948
  }
3949
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
+ */
3950
3954
  interface WrapLayer extends BaseWrap {
3951
3955
  /**
3952
3956
  * **DO NOT USE!**
@@ -3956,19 +3960,46 @@ interface WrapLayer extends BaseWrap {
3956
3960
  * @deprecated
3957
3961
  */
3958
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
+ */
3959
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
+ */
3960
3972
  Enabled: boolean;
3961
3973
  readonly Order: number;
3962
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
+ */
3963
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
+ */
3964
3988
  readonly ReferenceOrigin: CFrame;
3965
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
3966
3993
  * Tags: ReadOnly, NotReplicated
3967
3994
  */
3968
3995
  readonly ReferenceOriginWorld: CFrame;
3969
3996
  readonly ShrinkFactor: number;
3970
3997
  }
3971
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
+ */
3972
4003
  interface WrapTarget extends BaseWrap {
3973
4004
  /**
3974
4005
  * **DO NOT USE!**
@@ -3978,6 +4009,11 @@ interface WrapTarget extends BaseWrap {
3978
4009
  * @deprecated
3979
4010
  */
3980
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
+ */
3981
4017
  readonly Stiffness: number;
3982
4018
  }
3983
4019
 
@@ -4436,6 +4472,31 @@ interface BindableEvent<T extends Callback = Callback> extends Instance {
4436
4472
  *
4437
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.
4438
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
+ *
4439
4500
  * #### Mixed Tables
4440
4501
  *
4441
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.
@@ -4702,9 +4763,7 @@ interface BodyGyro extends BodyMover {
4702
4763
  P: number;
4703
4764
  }
4704
4765
 
4705
- /** **Note**
4706
- *
4707
- * 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.
4708
4767
  *
4709
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.
4710
4769
  *
@@ -6536,6 +6595,9 @@ interface HingeConstraint extends Constraint {
6536
6595
  * ![Servo](https://developer.roblox.com/assets/blt30faa18cf5f31d5c/HingeConstraintServo.gif)
6537
6596
  */
6538
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
+ */
6539
6601
  AngularResponsiveness: number;
6540
6602
  /**
6541
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.
@@ -6860,6 +6922,9 @@ interface SlidingBallConstraint extends Constraint {
6860
6922
  * ![Constraint Limits 2](https://developer.roblox.com/assets/blt7eda4750d97b868c/SlidingBallConstraintLimits1.png)
6861
6923
  */
6862
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
+ */
6863
6928
  LinearResponsiveness: number;
6864
6929
  /**
6865
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.
@@ -6943,6 +7008,9 @@ interface CylindricalConstraint extends SlidingBallConstraint {
6943
7008
  * Enables the angular limits around the rotation axis.
6944
7009
  */
6945
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
+ */
6946
7014
  AngularResponsiveness: number;
6947
7015
  /**
6948
7016
  * Restitution of the two limits, or how elastic they are. Value in \[0, 1\].
@@ -8768,7 +8836,7 @@ interface DraggerService extends Instance {
8768
8836
  ShowPivotIndicator: boolean;
8769
8837
  }
8770
8838
 
8771
- /** 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](https://developer.roblox.com/en-us/api-reference/class/FloatCurve) children 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. */
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. */
8772
8840
  interface EulerRotationCurve extends Instance {
8773
8841
  /**
8774
8842
  * **DO NOT USE!**
@@ -9266,6 +9334,10 @@ interface Fire extends Instance {
9266
9334
  Size: number;
9267
9335
  }
9268
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
+ */
9269
9341
  interface FloatCurve extends Instance {
9270
9342
  /**
9271
9343
  * **DO NOT USE!**
@@ -9503,7 +9575,7 @@ interface GlobalDataStore extends Instance {
9503
9575
  /**
9504
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`.
9505
9577
  *
9506
- * [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).
9507
9579
  *
9508
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.
9509
9581
  *
@@ -9575,7 +9647,7 @@ interface GlobalDataStore extends Instance {
9575
9647
  *
9576
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).
9577
9649
  *
9578
- * [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.
9579
9651
  *
9580
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`.
9581
9653
  *
@@ -14920,6 +14992,9 @@ interface HumanoidDescription extends Instance {
14920
14992
  * * [GetEmotes](https://developer.roblox.com/en-us/api-reference/function/HumanoidDescription/GetEmotes), which can retrieve a dictionary of emotes that may be removed
14921
14993
  */
14922
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
+ */
14923
14998
  SetAccessories(this: HumanoidDescription, accessories: Array<any>, includeRigidAccessories: boolean): void;
14924
14999
  /**
14925
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)
@@ -26331,6 +26406,7 @@ interface ReplicatedStorage extends Instance {
26331
26406
  readonly _nominal_ReplicatedStorage: unique symbol;
26332
26407
  }
26333
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. */
26334
26410
  interface RotationCurve extends Instance {
26335
26411
  /**
26336
26412
  * **DO NOT USE!**
@@ -33634,6 +33710,7 @@ interface Vector3Value extends ValueBase {
33634
33710
  readonly Changed: RBXScriptSignal<(value: Vector3) => void>;
33635
33711
  }
33636
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). */
33637
33714
  interface Vector3Curve extends Instance {
33638
33715
  /**
33639
33716
  * **DO NOT USE!**
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rbxts/types",
3
- "version": "1.0.537",
3
+ "version": "1.0.538",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },