@rbxts/types 1.0.728 → 1.0.730

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.
@@ -43,6 +43,7 @@ interface Services {
43
43
  DebuggerUIService: DebuggerUIService;
44
44
  DeviceIdService: DeviceIdService;
45
45
  DraggerService: DraggerService;
46
+ EngineAPICloudProcessingService: EngineAPICloudProcessingService;
46
47
  EventIngestService: EventIngestService;
47
48
  ExperienceAuthService: ExperienceAuthService;
48
49
  ExperienceNotificationService: ExperienceNotificationService;
@@ -260,9 +261,9 @@ interface CreatableInstances {
260
261
  DoubleConstrainedValue: DoubleConstrainedValue;
261
262
  DragDetector: DragDetector;
262
263
  Dragger: Dragger;
263
- DynamicImage: DynamicImage;
264
264
  DynamicMesh: DynamicMesh;
265
265
  EchoSoundEffect: EchoSoundEffect;
266
+ EditableImage: EditableImage;
266
267
  EqualizerSoundEffect: EqualizerSoundEffect;
267
268
  EulerRotationCurve: EulerRotationCurve;
268
269
  ExperienceInviteOptions: ExperienceInviteOptions;
@@ -324,6 +325,7 @@ interface CreatableInstances {
324
325
  Part: Part;
325
326
  ParticleEmitter: ParticleEmitter;
326
327
  PartOperation: PartOperation;
328
+ Path2D: Path2D;
327
329
  PathfindingLink: PathfindingLink;
328
330
  PathfindingModifier: PathfindingModifier;
329
331
  PitchShiftSoundEffect: PitchShiftSoundEffect;
@@ -416,6 +418,7 @@ interface CreatableInstances {
416
418
  UITextSizeConstraint: UITextSizeConstraint;
417
419
  UnionOperation: UnionOperation;
418
420
  UniversalConstraint: UniversalConstraint;
421
+ UnreliableRemoteEvent: UnreliableRemoteEvent;
419
422
  UserNotification: UserNotification;
420
423
  UserNotificationPayload: UserNotificationPayload;
421
424
  UserNotificationPayloadAnalyticsData: UserNotificationPayloadAnalyticsData;
@@ -500,6 +503,7 @@ interface Instances extends Services, CreatableInstances, AbstractInstances {
500
503
  AssetSoundEffect: AssetSoundEffect;
501
504
  AudioPages: AudioPages;
502
505
  BaseImportData: BaseImportData;
506
+ BaseRemoteEvent: BaseRemoteEvent;
503
507
  BaseWrap: BaseWrap;
504
508
  BubbleChatConfiguration: BubbleChatConfiguration;
505
509
  CatalogPages: CatalogPages;
@@ -2299,11 +2303,11 @@ interface AssetService extends Instance {
2299
2303
  /**
2300
2304
  * Tags: Yields
2301
2305
  */
2302
- CreateDynamicImageAsync(this: AssetService, textureId: string): DynamicImage;
2306
+ CreateDynamicMeshAsync(this: AssetService, meshId: string): DynamicMesh;
2303
2307
  /**
2304
2308
  * Tags: Yields
2305
2309
  */
2306
- CreateDynamicMeshAsync(this: AssetService, meshId: string): DynamicMesh;
2310
+ CreateEditableImageAsync(this: AssetService, textureId: string): EditableImage;
2307
2311
  /**
2308
2312
  * Clones a place with placeId equal to given templatePlaceId. It is placed into the inventory of the place's creator with the given name and description. This method will also return the placeId of the new place, which can be used with TeleportService. This method cannot be used to clone places that you do not own.
2309
2313
  *
@@ -2435,6 +2439,10 @@ interface AssetService extends Instance {
2435
2439
  * Tags: Yields
2436
2440
  */
2437
2441
  SearchAudio(this: AssetService, searchParameters: AudioSearchParams): AudioPages;
2442
+ /**
2443
+ * Tags: Yields
2444
+ */
2445
+ createDynamicMeshFromPartAsync(this: AssetService, meshPart: MeshPart): DynamicMesh;
2438
2446
  }
2439
2447
 
2440
2448
  /** **Note**
@@ -4651,6 +4659,112 @@ interface StarterGui extends BasePlayerGui {
4651
4659
  GetCore<T extends keyof GettableCores>(this: StarterGui, parameter: T): GettableCores[T];
4652
4660
  }
4653
4661
 
4662
+ interface BaseRemoteEvent extends Instance {
4663
+ /**
4664
+ * **DO NOT USE!**
4665
+ *
4666
+ * This field exists to force TypeScript to recognize this as a nominal type
4667
+ * @hidden
4668
+ * @deprecated
4669
+ */
4670
+ readonly _nominal_BaseRemoteEvent: unique symbol;
4671
+ }
4672
+
4673
+ /** A **RemoteEvent** is designed to provide a one-way message between the server and clients, allowing [Scripts](https://developer.roblox.com/en-us/api-reference/class/Script) to call code in [LocalScripts](https://developer.roblox.com/en-us/api-reference/class/LocalScript) and vice-versa. This message can be directed from one client to the server, from the server to a particular client, or from the server to all clients.
4674
+ *
4675
+ * In order for both the server and clients to utilize a remote event, the RemoteEvent object itself must be in a place where both sides can see it. As such, we recommend that you store the RemoteEvent inside of [ReplicatedStorage](https://developer.roblox.com/en-us/api-reference/class/ReplicatedStorage), although in some cases it's appropriate to store it in the workspace or inside a [Tool](https://developer.roblox.com/en-us/api-reference/class/Tool).
4676
+ *
4677
+ * If you need the result of the call, you should use a [RemoteFunction](https://developer.roblox.com/en-us/api-reference/class/RemoteFunction) instead. Otherwise a remote event is recommended since it will minimize network traffic/latency and won't yield the script to wait for a response. See [Remote Functions and Events](https://developer.roblox.com/en-us/articles/remote-functions-and-events) for more info.
4678
+ */
4679
+ interface RemoteEvent<T extends Callback = Callback> extends BaseRemoteEvent {
4680
+ /**
4681
+ * **DO NOT USE!**
4682
+ *
4683
+ * This field exists to force TypeScript to recognize this as a nominal type
4684
+ * @hidden
4685
+ * @deprecated
4686
+ */
4687
+ readonly _nominal_RemoteEvent: unique symbol;
4688
+ /**
4689
+ * The FireAllClients function fires the [RemoteEvent.OnClientEvent](https://developer.roblox.com/en-us/api-reference/event/RemoteEvent/OnClientEvent) event for each client.
4690
+ *
4691
+ * Unlike [RemoteEvent:FireClient](https://developer.roblox.com/en-us/api-reference/function/RemoteEvent/FireClient), this event does not take a target player as an argument. Instead it will fire to all clients who have the same remote event connected to an OnClientEvent event.
4692
+ *
4693
+ * Since this function is used to communicate from the server to the client, it will only work when used in a [Script](https://developer.roblox.com/en-us/api-reference/class/Script).
4694
+ *
4695
+ * The behavior of this function, as well as other [RemoteEvent](https://developer.roblox.com/en-us/api-reference/class/RemoteEvent) and [RemoteFunction](https://developer.roblox.com/en-us/api-reference/class/RemoteFunction) events and functions, is well documented in [this](https://developer.roblox.com/articles/Remote-Functions-and-Events) article.
4696
+ *
4697
+ * There are limitations on the kinds of data that can be passed between the client and server. For more information, see [Parameter Limitations](https://developer.roblox.com/articles/Remote-Functions-and-Events#parameter-limitations).
4698
+ *
4699
+ * Note
4700
+ * ----
4701
+ *
4702
+ * * Data can be passed from server to client through remote events in the same way data is passed from client to server. Any extra information can be passed in as arguments to the [RemoteEvent:FireClient](https://developer.roblox.com/en-us/api-reference/function/RemoteEvent/FireClient) and FireAllClients functions. Note that the FireClient function still needs to pass the player to send the message to as the first argument.
4703
+ */
4704
+ FireAllClients(this: RemoteEvent, ...args: Parameters<T>): void;
4705
+ /**
4706
+ * **FireClient** causes [OnClientEvent](https://developer.roblox.com/en-us/api-reference/event/RemoteEvent/OnClientEvent) to be fired in [LocalScript](https://developer.roblox.com/en-us/api-reference/class/LocalScript)s running for the given [Player](https://developer.roblox.com/en-us/api-reference/class/Player). Additional data passed to this function is then provided to OnClientEvent; beware of [limitations](https://developer.roblox.com/articles/Remote-Functions-and-Events#parameter-limitations) on this data.
4707
+ *
4708
+ * Since this function is used for communication from server to client, so it will only work when used by a server-side [Script](https://developer.roblox.com/en-us/api-reference/class/Script). For client-to-server communication (the other direction), use [FireServer](https://developer.roblox.com/en-us/api-reference/function/RemoteEvent/FireServer). Direct client-to-client communication not possible on Roblox; however, it can be simulated using a [Script](https://developer.roblox.com/en-us/api-reference/class/Script) that relays information received through some other means, such as [FireServer](https://developer.roblox.com/en-us/api-reference/function/RemoteEvent/FireServer).
4709
+ *
4710
+ * There are limitations on the kinds of data that can be passed between the client and server. For more information, see [Parameter Limitations](https://developer.roblox.com/articles/Remote-Functions-and-Events#parameter-limitations).
4711
+ *
4712
+ * See also
4713
+ * --------
4714
+ *
4715
+ * * [FireAllClients](https://developer.roblox.com/en-us/api-reference/function/RemoteEvent/FireAllClients), which works similarly but for all [Player](https://developer.roblox.com/en-us/api-reference/class/Player)
4716
+ *
4717
+ * * [Remote Functions and Events](https://developer.roblox.com/articles/Remote-Functions-and-Events), which describes related classes, functions and events and also important limitations on the data that can be sent
4718
+ *
4719
+ * * Sometimes a game will need to send information from one client to another. Roblox does not support direct client to client contact, so any communication must first go through the server. This is typically done using remote events (although functions could be used if desired). First, the sending client would call FireServer. On the server, the function connected to OnServerEvent would hear this firing, and itself would then call FireClient.
4720
+ */
4721
+ FireClient(this: RemoteEvent, player: Player, ...args: Parameters<T>): void;
4722
+ /**
4723
+ * The FireServer event fires the [RemoteEvent.OnServerEvent](https://developer.roblox.com/en-us/api-reference/event/RemoteEvent/OnServerEvent) event on the server using the arguments specified with an additional player argument at the beginning.
4724
+ *
4725
+ * Since this function is used to communicate from the client to the server, it will only work when used in a [LocalScript](https://developer.roblox.com/en-us/api-reference/class/LocalScript).
4726
+ *
4727
+ * When firing from the client note that nothing has to be passed in by default (unlike firing to the client from the server - where the player is passed in).
4728
+ *
4729
+ * The behavior of this function, as well as other [RemoteEvent](https://developer.roblox.com/en-us/api-reference/class/RemoteEvent) and [RemoteFunction](https://developer.roblox.com/en-us/api-reference/class/RemoteFunction) events and functions, is well documented in [this](https://developer.roblox.com/articles/Remote-Functions-and-Events) article.
4730
+ *
4731
+ * There are limitations on the kinds of data that can be passed between the client and server. For more information, see [Parameter Limitations](https://developer.roblox.com/articles/Remote-Functions-and-Events#parameter-limitations).
4732
+ */
4733
+ FireServer(this: RemoteEvent, ...args: Parameters<T>): void;
4734
+ /**
4735
+ * The OnClientEvent event fires listening functions in [LocalScript](https://developer.roblox.com/en-us/api-reference/class/LocalScript) when either [RemoteEvent:FireClient](https://developer.roblox.com/en-us/api-reference/function/RemoteEvent/FireClient) or [RemoteEvent:FireAllClients](https://developer.roblox.com/en-us/api-reference/function/RemoteEvent/FireAllClients) is fired by the server from a [Script](https://developer.roblox.com/en-us/api-reference/class/Script).
4736
+ *
4737
+ * This is used to retrieve remote events fired by the server and intended for the client. This event is in place to provide a method for communicating between the server and client, which is well documented in [this](https://developer.roblox.com/articles/Remote-Functions-and-Events) article. This event retrieves remote events fired by the server to the client.
4738
+ *
4739
+ * To fire from the client to the server, you should use [RemoteEvent:FireServer](https://developer.roblox.com/en-us/api-reference/function/RemoteEvent/FireServer) and [RemoteEvent.OnServerEvent](https://developer.roblox.com/en-us/api-reference/event/RemoteEvent/OnServerEvent).
4740
+ */
4741
+ readonly OnClientEvent: RBXScriptSignal<T>;
4742
+ /**
4743
+ * Fires listening functions in [Script](https://developer.roblox.com/en-us/api-reference/class/Script) when [RemoteEvent:FireServer](https://developer.roblox.com/en-us/api-reference/function/RemoteEvent/FireServer) is called from a [LocalScript](https://developer.roblox.com/en-us/api-reference/class/LocalScript).
4744
+ *
4745
+ * This is used to retrieve remote events fired by the client and intended for the server. This event is in place to provide a method for communicating between the client and server, which is well documented in [this](https://developer.roblox.com/articles/Remote-Functions-and-Events) article. This event retrieves remote events fired by the client to the server.
4746
+ *
4747
+ * To fire from the server to the client, you should use [RemoteEvent:FireClient](https://developer.roblox.com/en-us/api-reference/function/RemoteEvent/FireClient) and [RemoteEvent.OnClientEvent](https://developer.roblox.com/en-us/api-reference/event/RemoteEvent/OnClientEvent).
4748
+ */
4749
+ readonly OnServerEvent: RBXScriptSignal<(player: Player, ...args: Array<unknown>) => void>;
4750
+ }
4751
+
4752
+ interface UnreliableRemoteEvent extends BaseRemoteEvent {
4753
+ /**
4754
+ * **DO NOT USE!**
4755
+ *
4756
+ * This field exists to force TypeScript to recognize this as a nominal type
4757
+ * @hidden
4758
+ * @deprecated
4759
+ */
4760
+ readonly _nominal_UnreliableRemoteEvent: unique symbol;
4761
+ FireAllClients(this: UnreliableRemoteEvent, arguments: Array<any>): void;
4762
+ FireClient(this: UnreliableRemoteEvent, player: Player, arguments: Array<any>): void;
4763
+ FireServer(this: UnreliableRemoteEvent, arguments: Array<any>): void;
4764
+ readonly OnClientEvent: RBXScriptSignal<(arguments: Array<any>) => void>;
4765
+ readonly OnServerEvent: RBXScriptSignal<(player: Player, arguments: Array<any>) => void>;
4766
+ }
4767
+
4654
4768
  /** The base class for [WrapTarget](https://developer.roblox.com/en-us/api-reference/class/WrapTarget) and [WrapLayer](https://developer.roblox.com/en-us/api-reference/class/WrapLayer) objects. Note that [MeshPart](https://developer.roblox.com/en-us/api-reference/class/MeshPart) is the only valid parent type for [BaseWrap](https://developer.roblox.com/en-us/api-reference/class/BaseWrap) and that it behaves more like a component of [MeshPart](https://developer.roblox.com/en-us/api-reference/class/MeshPart) than an independent object. */
4655
4769
  interface BaseWrap extends Instance {
4656
4770
  /**
@@ -7816,6 +7930,7 @@ interface HingeConstraint extends Constraint {
7816
7930
  * The maximum torque 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) can apply when trying to reach its desired [HingeConstraint.AngularSpeed](https://developer.roblox.com/en-us/api-reference/property/HingeConstraint/AngularSpeed).
7817
7931
  */
7818
7932
  ServoMaxTorque: number;
7933
+ SoftlockServoUponReachingTarget: boolean;
7819
7934
  /**
7820
7935
  * The target angle a [HingeConstraint](https://developer.roblox.com/en-us/api-reference/class/HingeConstraint) will attempt to rotate to if its [HingeConstraint.ActuatorType](https://developer.roblox.com/en-us/api-reference/property/HingeConstraint/ActuatorType) is set to [Servo](https://developer.roblox.com/en-us/api-reference/enum/ActuatorType). Measured in degrees.
7821
7936
  */
@@ -8206,6 +8321,7 @@ interface SlidingBallConstraint extends Constraint {
8206
8321
  * The visualized size of the SlidingBallConstraint.
8207
8322
  */
8208
8323
  Size: number;
8324
+ SoftlockServoUponReachingTarget: boolean;
8209
8325
  /**
8210
8326
  * The desired speed a [SlidingBallConstraint](https://developer.roblox.com/en-us/api-reference/class/SlidingBallConstraint) with [SlidingBallConstraint.ActuatorType](https://developer.roblox.com/en-us/api-reference/property/SlidingBallConstraint/ActuatorType) set to [ActuatorType](https://developer.roblox.com/en-us/api-reference/enum/ActuatorType) will attempt to maintain while translating towards its [SlidingBallConstraint.TargetPosition](https://developer.roblox.com/en-us/api-reference/property/SlidingBallConstraint/TargetPosition). Measured in studs/second.
8211
8327
  */
@@ -8293,6 +8409,7 @@ interface CylindricalConstraint extends SlidingBallConstraint {
8293
8409
  * Maximum torque the servo motor can apply. The units are mass \* studs^2 / second^2. Value in \[0, inf).
8294
8410
  */
8295
8411
  ServoMaxTorque: number;
8412
+ SoftlockAngularServoUponReachingTarget: boolean;
8296
8413
  /**
8297
8414
  * Target angle (in degrees) between the reference axis and the secondary axis of Attachment1 around the rotation axis. Value in \[-180, 180\].
8298
8415
  */
@@ -9883,7 +10000,7 @@ interface DataStoreService extends Instance {
9883
10000
  /**
9884
10001
  * This function returns the default [GlobalDataStore](https://developer.roblox.com/en-us/api-reference/class/GlobalDataStore). If you want to access a specific **named** data store instead, you should use the [GetDataStore()](https://developer.roblox.com/en-us/api-reference/function/DataStoreService/GetDataStore) function.
9885
10002
  */
9886
- GetGlobalDataStore(this: DataStoreService): GlobalDataStore;
10003
+ GetGlobalDataStore(this: DataStoreService): DataStore;
9887
10004
  /**
9888
10005
  * This method returns an [OrderedDataStore](https://developer.roblox.com/en-us/api-reference/class/OrderedDataStore), similar to the way [GetDataStore()](https://developer.roblox.com/en-us/api-reference/function/DataStoreService/GetDataStore) does with [GlobalDataStores](https://developer.roblox.com/en-us/api-reference/class/GlobalDataStore). Subsequent calls to this method with the same name/scope will return the same object.
9889
10006
  */
@@ -10350,7 +10467,7 @@ interface DraggerService extends Instance {
10350
10467
  ShowPivotIndicator: boolean;
10351
10468
  }
10352
10469
 
10353
- interface DynamicImage extends Instance {
10470
+ interface EditableImage extends Instance {
10354
10471
  /**
10355
10472
  * **DO NOT USE!**
10356
10473
  *
@@ -10358,24 +10475,35 @@ interface DynamicImage extends Instance {
10358
10475
  * @hidden
10359
10476
  * @deprecated
10360
10477
  */
10361
- readonly _nominal_DynamicImage: unique symbol;
10478
+ readonly _nominal_EditableImage: unique symbol;
10362
10479
  Size: Vector2;
10363
- Copy(this: DynamicImage, min: Vector2, max: Vector2): DynamicImage;
10364
- Crop(this: DynamicImage, min: Vector2, max: Vector2): void;
10365
- DrawCircle(this: DynamicImage, center: Vector2, radius: number, color: Color3, transparency: number): void;
10366
- DrawImage(this: DynamicImage, position: Vector2, image: DynamicImage, combineType: CastsToEnum<Enum.ImageCombineType>): void;
10367
- DrawLine(this: DynamicImage, p1: Vector2, p2: Vector2, color: Color3, transparency: number): void;
10368
- DrawRectangle(this: DynamicImage, position: Vector2, size: Vector2, color: Color3, transparency: number): void;
10480
+ Copy(this: EditableImage, min: Vector2, max: Vector2): EditableImage;
10481
+ Crop(this: EditableImage, min: Vector2, max: Vector2): void;
10482
+ DrawCircle(this: EditableImage, center: Vector2, radius: number, color: Color3, transparency: number): void;
10483
+ DrawImage(this: EditableImage, position: Vector2, image: EditableImage, combineType: CastsToEnum<Enum.ImageCombineType>): void;
10484
+ DrawLine(this: EditableImage, p1: Vector2, p2: Vector2, color: Color3, transparency: number): void;
10485
+ DrawRectangle(this: EditableImage, position: Vector2, size: Vector2, color: Color3, transparency: number): void;
10369
10486
  /**
10370
10487
  * Tags: CustomLuaState
10371
10488
  */
10372
- ReadPixels(this: DynamicImage, position: Vector2, size: Vector2): unknown;
10373
- Resize(this: DynamicImage, size: Vector2): void;
10374
- Rotate(this: DynamicImage, degrees: number, changeSize: boolean): void;
10489
+ ReadPixels(this: EditableImage, position: Vector2, size: Vector2): unknown;
10490
+ Resize(this: EditableImage, size: Vector2): void;
10491
+ Rotate(this: EditableImage, degrees: number, changeSize: boolean): void;
10375
10492
  /**
10376
10493
  * Tags: CustomLuaState
10377
10494
  */
10378
- WritePixels(this: DynamicImage, position: Vector2, size: Vector2, pixels: Array<any>): void;
10495
+ WritePixels(this: EditableImage, position: Vector2, size: Vector2, pixels: Array<any>): void;
10496
+ }
10497
+
10498
+ interface EngineAPICloudProcessingService extends Instance {
10499
+ /**
10500
+ * **DO NOT USE!**
10501
+ *
10502
+ * This field exists to force TypeScript to recognize this as a nominal type
10503
+ * @hidden
10504
+ * @deprecated
10505
+ */
10506
+ readonly _nominal_EngineAPICloudProcessingService: unique symbol;
10379
10507
  }
10380
10508
 
10381
10509
  /** 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. */
@@ -11439,7 +11567,11 @@ interface DataStore extends GlobalDataStore {
11439
11567
  * @deprecated
11440
11568
  */
11441
11569
  readonly _nominal_DataStore: unique symbol;
11442
- GetAsync<T>(this: DataStore, key: string): LuaTuple<[T | undefined, DataStoreKeyInfo]>;
11570
+ GetAsync<T>(
11571
+ this: DataStore,
11572
+ key: string,
11573
+ options?: DataStoreGetOptions,
11574
+ ): LuaTuple<[T | undefined, DataStoreKeyInfo]>;
11443
11575
  IncrementAsync(
11444
11576
  this: DataStore,
11445
11577
  key: string,
@@ -15019,6 +15151,17 @@ interface SelectionPointLasso extends SelectionLasso {
15019
15151
  Point: Vector3;
15020
15152
  }
15021
15153
 
15154
+ interface Path2D extends GuiBase {
15155
+ /**
15156
+ * **DO NOT USE!**
15157
+ *
15158
+ * This field exists to force TypeScript to recognize this as a nominal type
15159
+ * @hidden
15160
+ * @deprecated
15161
+ */
15162
+ readonly _nominal_Path2D: unique symbol;
15163
+ }
15164
+
15022
15165
  /** The GuiService is a service which currently allows developers to control what [GuiObject](https://developer.roblox.com/en-us/api-reference/class/GuiObject) is currently being selected by the gamepad navigator. It also allows clients to check if Roblox's main menu is currently open.
15023
15166
  *
15024
15167
  * This service has a lot of hidden members, which are mainly used internally by Roblox's [CoreScripts](https://developer.roblox.com/en-us/api-reference/class/CoreScript).
@@ -22600,7 +22743,7 @@ interface MemoryStoreSortedMap extends Instance {
22600
22743
  *
22601
22744
  * Tags: Yields
22602
22745
  */
22603
- GetRangeAsync(this: MemoryStoreSortedMap, direction: CastsToEnum<Enum.SortDirection>, count: number, exclusiveLowerBound?: string, exclusiveUpperBound?: string): unknown;
22746
+ GetRangeAsync(this: MemoryStoreSortedMap, direction: CastsToEnum<Enum.SortDirection>, count: number, exclusiveLowerBound: unknown, exclusiveUpperBound: unknown): unknown;
22604
22747
  /**
22605
22748
  * Removes the provided key from the sorted map.
22606
22749
  *
@@ -22614,7 +22757,7 @@ interface MemoryStoreSortedMap extends Instance {
22614
22757
  *
22615
22758
  * Tags: Yields
22616
22759
  */
22617
- SetAsync(this: MemoryStoreSortedMap, key: string, value: unknown, expiration: number): boolean;
22760
+ SetAsync(this: MemoryStoreSortedMap, key: string, value: unknown, expiration: number, sortKey: unknown): boolean;
22618
22761
  /**
22619
22762
  * Retrieves the value of a key from a sorted map and lets you update it to a new value via a callback function.
22620
22763
  *
@@ -24990,6 +25133,10 @@ interface TriangleMeshPart extends BasePart {
24990
25133
  * Tags: NotReplicated
24991
25134
  */
24992
25135
  CollisionFidelity: Enum.CollisionFidelity;
25136
+ /**
25137
+ * Tags: NotReplicated
25138
+ */
25139
+ FluidFidelity: Enum.FluidFidelity;
24993
25140
  /**
24994
25141
  * Tags: NotReplicated
24995
25142
  */
@@ -26411,6 +26558,7 @@ interface PackageLink extends Instance {
26411
26558
  * @deprecated
26412
26559
  */
26413
26560
  readonly _nominal_PackageLink: unique symbol;
26561
+ readonly DefaultName: string;
26414
26562
  /**
26415
26563
  * The id of the asset this package corresponds to.
26416
26564
  *
@@ -29414,85 +29562,6 @@ interface RemoteDebuggerServer extends Instance {
29414
29562
  readonly _nominal_RemoteDebuggerServer: unique symbol;
29415
29563
  }
29416
29564
 
29417
- /** A **RemoteEvent** is designed to provide a one-way message between the server and clients, allowing [Scripts](https://developer.roblox.com/en-us/api-reference/class/Script) to call code in [LocalScripts](https://developer.roblox.com/en-us/api-reference/class/LocalScript) and vice-versa. This message can be directed from one client to the server, from the server to a particular client, or from the server to all clients.
29418
- *
29419
- * In order for both the server and clients to utilize a remote event, the RemoteEvent object itself must be in a place where both sides can see it. As such, we recommend that you store the RemoteEvent inside of [ReplicatedStorage](https://developer.roblox.com/en-us/api-reference/class/ReplicatedStorage), although in some cases it's appropriate to store it in the workspace or inside a [Tool](https://developer.roblox.com/en-us/api-reference/class/Tool).
29420
- *
29421
- * If you need the result of the call, you should use a [RemoteFunction](https://developer.roblox.com/en-us/api-reference/class/RemoteFunction) instead. Otherwise a remote event is recommended since it will minimize network traffic/latency and won't yield the script to wait for a response. See [Remote Functions and Events](https://developer.roblox.com/en-us/articles/remote-functions-and-events) for more info.
29422
- */
29423
- interface RemoteEvent<T extends Callback = Callback> extends Instance {
29424
- /**
29425
- * **DO NOT USE!**
29426
- *
29427
- * This field exists to force TypeScript to recognize this as a nominal type
29428
- * @hidden
29429
- * @deprecated
29430
- */
29431
- readonly _nominal_RemoteEvent: unique symbol;
29432
- /**
29433
- * The FireAllClients function fires the [RemoteEvent.OnClientEvent](https://developer.roblox.com/en-us/api-reference/event/RemoteEvent/OnClientEvent) event for each client.
29434
- *
29435
- * Unlike [RemoteEvent:FireClient](https://developer.roblox.com/en-us/api-reference/function/RemoteEvent/FireClient), this event does not take a target player as an argument. Instead it will fire to all clients who have the same remote event connected to an OnClientEvent event.
29436
- *
29437
- * Since this function is used to communicate from the server to the client, it will only work when used in a [Script](https://developer.roblox.com/en-us/api-reference/class/Script).
29438
- *
29439
- * The behavior of this function, as well as other [RemoteEvent](https://developer.roblox.com/en-us/api-reference/class/RemoteEvent) and [RemoteFunction](https://developer.roblox.com/en-us/api-reference/class/RemoteFunction) events and functions, is well documented in [this](https://developer.roblox.com/articles/Remote-Functions-and-Events) article.
29440
- *
29441
- * There are limitations on the kinds of data that can be passed between the client and server. For more information, see [Parameter Limitations](https://developer.roblox.com/articles/Remote-Functions-and-Events#parameter-limitations).
29442
- *
29443
- * Note
29444
- * ----
29445
- *
29446
- * * Data can be passed from server to client through remote events in the same way data is passed from client to server. Any extra information can be passed in as arguments to the [RemoteEvent:FireClient](https://developer.roblox.com/en-us/api-reference/function/RemoteEvent/FireClient) and FireAllClients functions. Note that the FireClient function still needs to pass the player to send the message to as the first argument.
29447
- */
29448
- FireAllClients(this: RemoteEvent, ...args: Parameters<T>): void;
29449
- /**
29450
- * **FireClient** causes [OnClientEvent](https://developer.roblox.com/en-us/api-reference/event/RemoteEvent/OnClientEvent) to be fired in [LocalScript](https://developer.roblox.com/en-us/api-reference/class/LocalScript)s running for the given [Player](https://developer.roblox.com/en-us/api-reference/class/Player). Additional data passed to this function is then provided to OnClientEvent; beware of [limitations](https://developer.roblox.com/articles/Remote-Functions-and-Events#parameter-limitations) on this data.
29451
- *
29452
- * Since this function is used for communication from server to client, so it will only work when used by a server-side [Script](https://developer.roblox.com/en-us/api-reference/class/Script). For client-to-server communication (the other direction), use [FireServer](https://developer.roblox.com/en-us/api-reference/function/RemoteEvent/FireServer). Direct client-to-client communication not possible on Roblox; however, it can be simulated using a [Script](https://developer.roblox.com/en-us/api-reference/class/Script) that relays information received through some other means, such as [FireServer](https://developer.roblox.com/en-us/api-reference/function/RemoteEvent/FireServer).
29453
- *
29454
- * There are limitations on the kinds of data that can be passed between the client and server. For more information, see [Parameter Limitations](https://developer.roblox.com/articles/Remote-Functions-and-Events#parameter-limitations).
29455
- *
29456
- * See also
29457
- * --------
29458
- *
29459
- * * [FireAllClients](https://developer.roblox.com/en-us/api-reference/function/RemoteEvent/FireAllClients), which works similarly but for all [Player](https://developer.roblox.com/en-us/api-reference/class/Player)
29460
- *
29461
- * * [Remote Functions and Events](https://developer.roblox.com/articles/Remote-Functions-and-Events), which describes related classes, functions and events and also important limitations on the data that can be sent
29462
- *
29463
- * * Sometimes a game will need to send information from one client to another. Roblox does not support direct client to client contact, so any communication must first go through the server. This is typically done using remote events (although functions could be used if desired). First, the sending client would call FireServer. On the server, the function connected to OnServerEvent would hear this firing, and itself would then call FireClient.
29464
- */
29465
- FireClient(this: RemoteEvent, player: Player, ...args: Parameters<T>): void;
29466
- /**
29467
- * The FireServer event fires the [RemoteEvent.OnServerEvent](https://developer.roblox.com/en-us/api-reference/event/RemoteEvent/OnServerEvent) event on the server using the arguments specified with an additional player argument at the beginning.
29468
- *
29469
- * Since this function is used to communicate from the client to the server, it will only work when used in a [LocalScript](https://developer.roblox.com/en-us/api-reference/class/LocalScript).
29470
- *
29471
- * When firing from the client note that nothing has to be passed in by default (unlike firing to the client from the server - where the player is passed in).
29472
- *
29473
- * The behavior of this function, as well as other [RemoteEvent](https://developer.roblox.com/en-us/api-reference/class/RemoteEvent) and [RemoteFunction](https://developer.roblox.com/en-us/api-reference/class/RemoteFunction) events and functions, is well documented in [this](https://developer.roblox.com/articles/Remote-Functions-and-Events) article.
29474
- *
29475
- * There are limitations on the kinds of data that can be passed between the client and server. For more information, see [Parameter Limitations](https://developer.roblox.com/articles/Remote-Functions-and-Events#parameter-limitations).
29476
- */
29477
- FireServer(this: RemoteEvent, ...args: Parameters<T>): void;
29478
- /**
29479
- * The OnClientEvent event fires listening functions in [LocalScript](https://developer.roblox.com/en-us/api-reference/class/LocalScript) when either [RemoteEvent:FireClient](https://developer.roblox.com/en-us/api-reference/function/RemoteEvent/FireClient) or [RemoteEvent:FireAllClients](https://developer.roblox.com/en-us/api-reference/function/RemoteEvent/FireAllClients) is fired by the server from a [Script](https://developer.roblox.com/en-us/api-reference/class/Script).
29480
- *
29481
- * This is used to retrieve remote events fired by the server and intended for the client. This event is in place to provide a method for communicating between the server and client, which is well documented in [this](https://developer.roblox.com/articles/Remote-Functions-and-Events) article. This event retrieves remote events fired by the server to the client.
29482
- *
29483
- * To fire from the client to the server, you should use [RemoteEvent:FireServer](https://developer.roblox.com/en-us/api-reference/function/RemoteEvent/FireServer) and [RemoteEvent.OnServerEvent](https://developer.roblox.com/en-us/api-reference/event/RemoteEvent/OnServerEvent).
29484
- */
29485
- readonly OnClientEvent: RBXScriptSignal<T>;
29486
- /**
29487
- * Fires listening functions in [Script](https://developer.roblox.com/en-us/api-reference/class/Script) when [RemoteEvent:FireServer](https://developer.roblox.com/en-us/api-reference/function/RemoteEvent/FireServer) is called from a [LocalScript](https://developer.roblox.com/en-us/api-reference/class/LocalScript).
29488
- *
29489
- * This is used to retrieve remote events fired by the client and intended for the server. This event is in place to provide a method for communicating between the client and server, which is well documented in [this](https://developer.roblox.com/articles/Remote-Functions-and-Events) article. This event retrieves remote events fired by the client to the server.
29490
- *
29491
- * To fire from the server to the client, you should use [RemoteEvent:FireClient](https://developer.roblox.com/en-us/api-reference/function/RemoteEvent/FireClient) and [RemoteEvent.OnClientEvent](https://developer.roblox.com/en-us/api-reference/event/RemoteEvent/OnClientEvent).
29492
- */
29493
- readonly OnServerEvent: RBXScriptSignal<(player: Player, ...args: Array<unknown>) => void>;
29494
- }
29495
-
29496
29565
  /** A server should rarely invoke a client via [InvokeClient()](https://developer.roblox.com/en-us/api-reference/function/RemoteFunction/InvokeClient) as it can be potentially game breaking. For client-only actions that don't require a callback, like updating a GUI, a [server-to-client remote event](#server-to-client-remote-event) should be used instead. If [InvokeClient()](https://developer.roblox.com/en-us/api-reference/function/RemoteFunction/InvokeClient) is used, risks include:
29497
29566
  *
29498
29567
  * * If the client throws an error, the server will throw the error too.
@@ -29665,6 +29734,7 @@ interface RomarkService extends Instance {
29665
29734
  * @deprecated
29666
29735
  */
29667
29736
  readonly _nominal_RomarkService: unique symbol;
29737
+ EndRemoteRomarkTest(this: RomarkService): void;
29668
29738
  }
29669
29739
 
29670
29740
  /** 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. */
@@ -30981,7 +31051,12 @@ interface SocialService extends Instance {
30981
31051
  */
30982
31052
  PromptGameInvite(this: SocialService, player: Player, experienceInviteOptions?: ExperienceInviteOptions): void;
30983
31053
  PromptIrisInvite(this: SocialService, player: Player, tag: string): void;
31054
+ PromptPhoneBook(this: SocialService, player: Player, tag: string): void;
30984
31055
  ShowSelfView(this: SocialService, selfViewPosition?: CastsToEnum<Enum.SelfViewPosition>): void;
31056
+ /**
31057
+ * Tags: Yields
31058
+ */
31059
+ CanSendCallInviteAsync(this: SocialService, player: Player): boolean;
30985
31060
  /**
30986
31061
  * **CanSendGameInviteAsync** indicates whether the given [Player](https://developer.roblox.com/en-us/api-reference/class/Player) can invite other players to the current game. If they can, it returns true.
30987
31062
  *
@@ -30994,6 +31069,7 @@ interface SocialService extends Instance {
30994
31069
  * Tags: Yields
30995
31070
  */
30996
31071
  CanSendIrisInviteAsync(this: SocialService, player: Player): boolean;
31072
+ readonly CallInviteStateChanged: RBXScriptSignal<(player: Player, inviteState: Enum.InviteState) => void>;
30997
31073
  /**
30998
31074
  * This event is a signal invoked when a player has closed the game invite prompt and batches all users and conversation participants into a single array. This prompt can be prompted by the developer or accessed from the SettingsHub menu.
30999
31075
  *
@@ -31020,6 +31096,8 @@ interface SocialService extends Instance {
31020
31096
  */
31021
31097
  readonly GameInvitePromptClosed: RBXScriptSignal<(senderPlayer: Player, recipientIds: Array<number>) => void>;
31022
31098
  readonly IrisInvitePromptClosed: RBXScriptSignal<(player: Player) => void>;
31099
+ readonly PhoneBookPromptClosed: RBXScriptSignal<(player: Player) => void>;
31100
+ OnCallInviteInvoked: (tag: string, callParticipantIds: Array<any>) => Instance;
31023
31101
  OnIrisInviteInvoked: (tag: string, irisParticipantIds: Array<any>) => Instance;
31024
31102
  }
31025
31103
 
@@ -31057,6 +31135,7 @@ interface Sound extends Instance {
31057
31135
  * Sounds parented to a [BasePart](https://developer.roblox.com/en-us/api-reference/class/BasePart) or [Attachment](https://developer.roblox.com/en-us/api-reference/class/Attachment) that are descendants of the [Workspace](https://developer.roblox.com/en-us/api-reference/class/Workspace) are considered 3D sounds and their volume whilst playing is dependent on the distance between the client's sound listener ([Camera](https://developer.roblox.com/en-us/api-reference/class/Camera) position by default) and the Sound's parent. Two properties influence this behavior EmitterSize and [Sound.RollOffMode](https://developer.roblox.com/en-us/api-reference/property/Sound/RollOffMode).
31058
31136
  *
31059
31137
  * The way the [Sound](https://developer.roblox.com/en-us/api-reference/class/Sound) attenuates (fades out) after the distance between the listener and the sound exceeds the EmitterSize is determined by RollOffMode.
31138
+ * @deprecated Use `RollOffMinDistance` instead
31060
31139
  */
31061
31140
  EmitterSize: number;
31062
31141
  /**
@@ -31102,12 +31181,14 @@ interface Sound extends Instance {
31102
31181
  * How MaxDistance impacts the attenuation of a sound (manner in which it fades out) is dependent on the [Sound.RollOffMode](https://developer.roblox.com/en-us/api-reference/property/Sound/RollOffMode) property. When RollOffMode is set to use an inverse type distance model (Inverse or InverseTapered) the MaxDistance will not effect the attenuation of the sound. This means that low values for MaxDistance will cause the sound to abruptly cut off when the listener reaches the MaxDistance. In most cases this is not desirable and developers are advised not to use low MaxDistance values.
31103
31182
  *
31104
31183
  * When RollOffMode is set to a linear type distance model (Linear or LinearSquared) the sound will attenuate between [Sound.EmitterSize](https://developer.roblox.com/en-us/api-reference/property/Sound/EmitterSize) and MaxDistance (with playback volume reaching zero at MaxDistance). This is less realistic, but in some cases allows attenuation to be handled in a more intuitive way.
31184
+ * @deprecated Use `RollOffMaxDistance` instead
31105
31185
  */
31106
31186
  MaxDistance: number;
31107
31187
  /**
31108
31188
  * The minimum distance at which a 3D [Sound](https://developer.roblox.com/en-us/api-reference/class/Sound) (direct child of a [BasePart](https://developer.roblox.com/en-us/api-reference/class/BasePart) or [Attachment](https://developer.roblox.com/en-us/api-reference/class/Attachment)) will begin to attenuate. Effectively, the emitter size.
31109
31189
  *
31110
31190
  * Deprecated in favor of Sound.EmitterSize.
31191
+ * @deprecated Use `RollOffMinDistance` instead
31111
31192
  */
31112
31193
  MinDistance: number;
31113
31194
  /**
@@ -1506,6 +1506,10 @@ interface TriangleMeshPart extends BasePart {
1506
1506
  * Tags: NotReplicated
1507
1507
  */
1508
1508
  CollisionFidelity: Enum.CollisionFidelity;
1509
+ /**
1510
+ * Tags: NotReplicated
1511
+ */
1512
+ FluidFidelity: Enum.FluidFidelity;
1509
1513
  }
1510
1514
 
1511
1515
  interface MeshPart extends TriangleMeshPart {